如何将asp.net NULL值转换为“”(空字符串)

时间:2011-05-05 23:45:50

标签: asp.net .net sql-server visual-studio sqldatasource

我遇到的情况是我使用SQLDataSource的详细信息视图来更新SQL Server数据库中的记录。

我的问题是未完成的文本字段在数据库中转换为NULL。这会导致网站使用无法处理NULL DB值的第三方Web服务。

是否存在一种方法,如果文本字段为空,那么当更新或插入发生时,数据将转换为“”(空字符串)而不是NULL值?

2 个答案:

答案 0 :(得分:5)

由于您使用的是SQLDataSource,因此在插入或更新记录时,插入/更新参数的属性为ConvertEmptyStringToNull。将此值设置为false,如果没有为该控件提供值,则将字符串设置为空。请看下面的例子:

<asp:SqlDataSource ID="SqlDataSource1" runat="server">
        <InsertParameters>
            <asp:ControlParameter ConvertEmptyStringToNull="false" />
        </InsertParameters>
        <UpdateParameters>
            <asp:ControlParameter ConvertEmptyStringToNull="false" />
        </UpdateParameters>
    </asp:SqlDataSource>

答案 1 :(得分:0)

您可以在数据库表列上设置default value“”。或者在SQL select语句中,您可以执行类似

的操作
SELECT IsNull(ColName,"")
FROM SomeTable