小编use*_*754的帖子

从可为空的变量中获取类型

public class MyType
{
    public int? MyId { get; set; }    
}

MyType myType = new MyType();
myType.MyId.GetType()
Run Code Online (Sandbox Code Playgroud)

由于MyId未设置,最后一行返回一个异常(即,它为null)。在这种情况下,如何获取类型(int?或什至int)?注意,int?用作示例,变量可以具有任何类型,这只是一个简化的示例。

请注意,根据微软的说法,这应该可行:

int? a = 17;
Type typeOfA = a.GetType();
Console.WriteLine(typeOfA.FullName);
// Output:
// System.Int32
Run Code Online (Sandbox Code Playgroud)

它确实在分配值时起作用...

编辑。

查看一些答复和评论,我想在代码中添加这些内容,我将myType.MyId作为对象传递给需要弄清楚其类型的方法。基本上,它类似于:

public void RunQuery(string sql, List<(string parameterName, object parameterValue)> parameters)
Run Code Online (Sandbox Code Playgroud)

所以myType.MyId作为parameterValue传递到RunQuery

c# asp.net types nullable

2
推荐指数
1
解决办法
374
查看次数

标签 统计

asp.net ×1

c# ×1

nullable ×1

types ×1