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

Can I convert my query result to a string using C#

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

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

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

要获取字符串集合,请执行以下操作

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

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

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);
}