Extensions/DictionaryExtensions.cs
(开头部分) 9KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
namespace ComLib.Extensions
{
/// <summary>
/// Extension methods for dictionaries.
/// </summary>
public static class DictionaryExtensions
{
/// <summary>
/// Convert to correct type.
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="input"></param>
/// <returns></returns>
public static T ConvertTo<T>(object input)
{
object result = default(T);
if (typeof(T) == typeof(int))
result = System.Convert.ToInt32(input);
else if (typeof(T) == typeof(long))
result = System.Convert.ToInt64(input);
else if (typeof(T) == typeof(string))
result = System.Convert.ToString(input);
else if (typeof(T) == typeof(bool))
result = System.Convert.ToBoolean(input);
else if (typeof(T) == typeof(double))
result = System.Convert.ToDouble(input);
else if (typeof(T) == typeof(DateTime))
result = System.Convert.ToDateTime(input);
else
result = input;
return (T)result;
}
#region Extensions for IDictionary
/// <summary>
/// Get typed value.
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="d"></param>
/// <param name="key"></param>
/// <returns></returns>
public static T Get<T>(this IDictionary d, string key)
{
object result = d[key];
if (result == null) return default(T);
T converted = ConvertTo<T>(result);
return converted;
}
/// <summary>
后面还有 220 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
