【发布时间】:2012-01-14 08:59:00
【问题描述】:
我正在解析 XML (LINQ to XML),并且在元素/属性为空的情况下使用可空类型(int? 和 decimal?)。但是,在构建我的集合以传递给数据库(使用 TVP)时,我不知道如何处理值实际上为空的情况。我不能将 null 传递给 SqlDataRecord SetInt32 或 SetDecimal,我不想设置为零....我实际上希望它为 null。
告诉我int 没有过载?
下面的Count是一个可以为空的类型(int?Count)
SqlDataRecord rec = new SqlDataRecord(
new SqlMetaData("Name", SqlDbType.VarChar, 50),
new SqlMetaData("Type", SqlDbType.VarChar, 50),
new SqlMetaData("Count", SqlDbType.Int));
rec.SetString(0, dm.Name);
rec.SetString(1, dm.Type);
rec.SetString(2, dm.Count);
任何想法如何在不传递零(保持空值)的情况下处理这个问题?
【问题讨论】:
标签: c# sql-server-2008 sqldatatypes