向 DataTable 动态添加列时如何防止 "Possible 'null' assignment to entity marked with 'NotNull' attribute"?
How can I prevent a "Possible 'null' assignment to entity marked with 'NotNull' attribute" when dynamically adding a column to a DataTable?
我有这个代码:
dtAddrInfo.Columns.Add(new DataColumn("Address", Type.GetType("System.String")));
...其中 Resharper 咆哮说,“可能 'null' 分配给标有 'NotNull' 属性 的实体”
代码有什么问题?
甚至当我让 Resharper 根据其各种建议调整代码时:
dtAddrInfo.Columns.Add(new DataColumn("Address", dataType: System.Type.GetType("System.String")));
dtAddrInfo.Columns.Add(new DataColumn("City", System.Type.GetType("System.String")));
dtAddrInfo.Columns.Add(column: new DataColumn("State", Type.GetType("System.String")));
...它仍然在每一行中以同样的方式痛苦地抱怨同样的事情。
它不会阻止编译,但我还是喜欢在可能的情况下成为清洁先生。
这个:
System.Type.GetType("System.String")
可以returnnull
,因为你正在String
查找一个可能不存在的Type
,你应该使用:
typeof(System.String)
那么它应该停止抱怨了。
我有这个代码:
dtAddrInfo.Columns.Add(new DataColumn("Address", Type.GetType("System.String")));
...其中 Resharper 咆哮说,“可能 'null' 分配给标有 'NotNull' 属性 的实体”
代码有什么问题?
甚至当我让 Resharper 根据其各种建议调整代码时:
dtAddrInfo.Columns.Add(new DataColumn("Address", dataType: System.Type.GetType("System.String")));
dtAddrInfo.Columns.Add(new DataColumn("City", System.Type.GetType("System.String")));
dtAddrInfo.Columns.Add(column: new DataColumn("State", Type.GetType("System.String")));
...它仍然在每一行中以同样的方式痛苦地抱怨同样的事情。
它不会阻止编译,但我还是喜欢在可能的情况下成为清洁先生。
这个:
System.Type.GetType("System.String")
可以returnnull
,因为你正在String
查找一个可能不存在的Type
,你应该使用:
typeof(System.String)
那么它应该停止抱怨了。