Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 合并两个数据字段(列)值并显示在Listbox-ASP.Net中?_C#_Asp.net_Sql Server - Fatal编程技术网

C# 合并两个数据字段(列)值并显示在Listbox-ASP.Net中?

C# 合并两个数据字段(列)值并显示在Listbox-ASP.Net中?,c#,asp.net,sql-server,C#,Asp.net,Sql Server,我想从MicrosoftSQLServer中选择数据,并连接其两个列值,然后在列表框中显示 例如,SQL中有两列,即软件名和软件用户。一个软件有N个用户,我要做的是在SQL中选择软件名,并将其与软件用户名连接起来,然后显示在列表框中 到目前为止,我尝试了这个,但是列表框显示为空 SqlCommand cmd = new SqlCommand("Select [SWName] +'-'+ [SWUser] as Creator from AllSWUsers WHERE SWName = @SWN

我想从MicrosoftSQLServer中选择数据,并连接其两个列值,然后在列表框中显示

例如,SQL中有两列,即软件名和软件用户。一个软件有N个用户,我要做的是在SQL中选择软件名,并将其与软件用户名连接起来,然后显示在列表框中

到目前为止,我尝试了这个,但是列表框显示为空

SqlCommand cmd = new SqlCommand("Select [SWName] +'-'+ [SWUser] as Creator from AllSWUsers WHERE SWName = @SWName", con);
cmd.Parameters.AddWithValue("@SWName", Global.usrlsts);
SqlDataAdapter daFill = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
daFill.Fill(ds);
lstUsers.DataSource = ds;
lstUsers.DataTextField = "Creator";
lstUsers.DataValueField = "SWName";
lstUsers.DataBind();

这可能是您在查询中没有选择
SWName
的原因,但您在代码中使用的列如下所示

lstUsers.DataValueField = "SWName";
试试这个

Select ISNULL([SWName], '') as [SWName], ISNULL([SWName],'') +'-'+ ISNULL([SWUser], '') as Creator from AllSWUsers WHERE SWName = @SWName

这可能是您在查询中没有选择
SWName
的原因,但您在代码中使用的列如下所示

lstUsers.DataValueField = "SWName";
试试这个

Select ISNULL([SWName], '') as [SWName], ISNULL([SWName],'') +'-'+ ISNULL([SWUser], '') as Creator from AllSWUsers WHERE SWName = @SWName

您确定您的查询返回数据吗?有两件事要尝试。首先在sql中尝试您的查询,并查看它是否返回数据。其次,调试并检查“ds”是否已填充。另外,您从何处获取数据值字段“SWName”?请注意,在SQLServer中,如果在
string1+string2+string3…
场景中有任何字符串为null,则整个字符串将变为null。最好使用
CONCAT
don't use是否确定查询返回数据?需要尝试两件事。首先在sql中尝试您的查询,并查看它是否返回数据。其次,调试并检查“ds”是否已填充。另外,您从何处获取数据值字段“SWName”?请注意,在SQLServer中,如果在
string1+string2+string3…
场景中有任何字符串为null,则整个字符串将变为null。最好使用
CONCAT
不要使用@santosh您没有更新您的问题,因为我是说您正在使用C#中的SWName列,它不是通过select语句返回的。@santosh您没有更新您的问题,因为我是说您正在使用C#中的SWName列,它不是通过select语句返回的。@santosh您没有更新您的问题陈述