如何在C#中比较字符串值

4

我正在从SQL数据库中提取数据,使用以下语句填充缺失的空白或丢失的数据。

string.Join(
    ",",
    from
        r in siteData.Rows.OfType<DataRow>() 
    select
        r[28] == DBNull.Value ? "null" : r[28]);

我想把数值-9999替换成空白值。

请查看MSDN https://msdn.microsoft.com/zh-cn/library/fk49wtc1(v=vs.110).aspx - Kamil Budziewski
2个回答

6
在SQL中,使用CASE WHEN
SELECT
    CASE WHEN someValue = -9999 THEN '' ELSE someValue END AS colName

在Linq中,只需更改三元运算符即可:

siteData.Rows.OfType<DataRow>().Select( r => r[28] == DBNull.Value || r[28] == -9999 ? "" : r[28] )

0
你可以这样做:
string.Join(
    ",",
    from
        r in siteData.Rows.OfType<DataRow>() 
    select
        string.IsNullOrEmpty((string)r[28]) ? "null" : r[28]);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接