gpt4 book ai didi

c# - 选择语句抛出 null 异常

转载 作者:太空宇宙 更新时间:2023-11-03 13:49:20 25 4
gpt4 key购买 nike

在第二个 Select 语句中得到一个神秘的 null 异常

public static string GetSNFromDeviceMacAddress(string macAddress)
{
string commzSerialNumber = null;
var dbFactory = EndpointHost.AppHost.TryResolve<IDbConnectionFactory>();
try
{
OrmDataLib.Device device;
OrmDataLib.Commz commz;
using (var db = dbFactory.OpenDbConnection())
{
// first select works fine
device = db
.Select<OrmDataLib.Device>(q => q.MacAddress == macAddress)
.FirstOrDefault();
if (null != device)
{
// mysterious null exception
commz = db
.Select<OrmDataLib.Commz>(c => c.Id == device.Commz_Id)
.FirstOrDefault();
if (null != commz)
commzSerialNumber = commz.SerialNumber;
}
}
}
catch { }
return commzSerialNumber;
}

最佳答案

事实证明,接收 DTO 应该允许空值,但事实并非如此。

属性,

Commz.Site_id 已声明:

public int Site_id { get; set; }

应该声明为:

public int? Site_id { get; set; }

关于c# - 选择语句抛出 null 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14164043/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com