绑定数据源时为什么空引用异常?

时间:2011-06-07 18:21:25

标签: c# binding datasource

我正在尝试将数据从对象绑定到我的绑定源。

我写了这个:

if (input.PhysicalCharacteristics.Mass != null)
   massBindingSource.DataSource = input.PhysicalCharacteristics.Mass;

但它给了我一个空例外。

哪里可能是问题?当我调试它时,我可以看到Mass不是null - 但它必须是为了进入这个条件 - 但是当它试图在我的绑定源上设置数据源时它会失败。怎么了?

2 个答案:

答案 0 :(得分:1)

无论你绑定什么,在.ascx / .aspx中都会存在你试图访问input.PhysicalCharacteristics.Mass的所有属性吗?他们是空的吗?

编辑:根据您的评论所说的,如果它们为空,我总是为textBox.Text分配一个空字符串。这可以通过以下方式完成:(我认为这应该有用)。

textBox.Text = '<%# DataBinder.Eval(Container.DataItem, "Value") ?? "" %>'

答案 1 :(得分:0)

将Mass'数据类型转换为Massbindingsource的可接受数据类型。