【问题标题】:Linq to SQL null values in GridViewLinq to SQL GridView 中的空值
【发布时间】:2010-10-08 00:37:54
【问题描述】:

通常,如果我将 ObjectDataSource 链接到 GridView,并且我有一个 TemplateColumn,其中有一个 Eval 并且它是 Null,我可以只放置一个“.ToString()”它可以正常工作。出于某种原因,当您使用 Linq to SQL 时,这并不相同。

我最初将 XSD 文件用于带有自定义 BLL 的 DAL。我使用 ObjectDataSource 将它绑定到 GridView。我正在用 Linq 将 XSD 文件换成 SQL,除了可以具有 Null 值的列之外,一切都像旧方式一样工作。

以前有没有人遇到过这个问题,如果有,我该如何解决这个问题?

【问题讨论】:

    标签: linq-to-sql objectdatasource


    【解决方案1】:

    LINQ 返回的大部分内容都是Nullable types。因此,在您的绑定表达式中,您需要使用 GetValueOrDefault().ToString() 或新的“??”空合并运算符,而不仅仅是普通的旧 ToString()。我希望这有帮助。检查此link

    例子:

    // this will output the int if not null otherwise an empty string.
    <%# (int?)Eval("MyIntegerField") ?? "" %> 
    

    【讨论】:

    • VB: If(DirectCast(Eval("MyIntegerField"), System.Nullable(Of Integer)), "")
    猜你喜欢
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-10
    • 2015-11-03
    相关资源
    最近更新 更多