我可以使用C#将查询结果转换为字符串吗?

时间:2015-01-28 15:17:01

标签: c# asp.net linq

我在下面有一个简单的LINQ查询。 Name是数据库中唯一的列,ID是主键。

 var query = from b in db.Database
                    where b.Name == "myrssfeed/rss"
                    select b;

有没有办法将'myrssfeed / rss'转换为字符串?

2 个答案:

答案 0 :(得分:1)

“Paul_O'brien”是一个字符串,但你的Linq查询没有返回一个字符串,它返回IEnumerable<whatever type b is>。所以你需要选择名称并告诉它只有一个结果。

var paul = (from b in db.Database
                where b.Name == "Paul_O'brien"
                select b.Name).SingleOrDefault();

否则,您可以遍历字符串。

var names = from b in db.Database
                    where b.Name == "myrssfeed/rss"
                    select b.Name;

foreach(var name in names)
{
    Console.WriteLine(name);
}

答案 1 :(得分:0)

要获得字符串集合,以下将执行此操作

 IEnumerable<string> names = from b in db.Database
                    where b.Name == "Paul_O'brien"
                    select b.Name;

如果您唯一的期望,以下方法将起作用

string name = (from b in db.Database
                        where b.Name == "Paul_O'brien"
                        select b.Name).Single();