读书人

用Linq查询的结果怎样赋给一字符串变

发布时间: 2012-03-26 15:46:56 作者: rapoo

用Linq查询的结果,怎样赋给一字符串变量?
在数据库 IP_Table表 的 IP_LIST字段 存有一字符串:172.168.1.1|172.168.1.2|172.168.1.3|
用LINQ查询如下 :

C# code
var result = from ip in lqDB.IP_Table                            where ID == '1' (查询某一条记录)                            select new                            (                               IPA = ip.IP_LIST                             );

怎样实现把查询结果赋给一字符串数组或字符串也可以。
这种方法提示 “无效参数”:
C# code
string sql =string.Join("|",result.ToArray());

Join 的第二个参数是个字符串数组,而此处的 result 是个结果集。

不知道怎样实现这样的功能,非常感谢!

[解决办法]
C# code
 List<string> list = new List<string>();            list.Add("172.168.1.1|172.168.1.2|172.168.1.3|");            var result = from ip in list                         select new { ip };            foreach (var item in result)                MessageBox.Show(item.ip);
[解决办法]
C# code
var result = from ip in lqDB.IP_Table                            where ID == '1' (查询某一条记录)                            select ip.IP_LIST;  //此处不要使用匿名类string sql =string.Join("|",result.ToArray());
[解决办法]
其实使用匿名类也是可以了,只是代码繁琐了点:



var result = from ip in lqDB.IP_Table
where ID == '1' (查询某一条记录)
select new
(
IPA = ip.IP_LIST
);

string sql =string.Join("|",result.Select(p=>p.IPA).ToArray());

读书人网 >.NET

热点推荐