首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

用Linq查询的结果,怎样赋给一字符串变量?解决方案

2012-03-26 
用Linq查询的结果,怎样赋给一字符串变量?在数据库IP_Table表 的 IP_LIST字段 存有一字符串:172.168.1.1|17

用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());

热点排行