我對此很陌生,我想選擇:(SQL)從[tablename]中選擇textfileURL;Linq lambda Select語句
我現在擁有的一切:
public string GetfileURL()
{
return context.wordpuzzles.Select(i => i.textfileURL).ToString();
}
但它不工作。
我對此很陌生,我想選擇:(SQL)從[tablename]中選擇textfileURL;Linq lambda Select語句
我現在擁有的一切:
public string GetfileURL()
{
return context.wordpuzzles.Select(i => i.textfileURL).ToString();
}
但它不工作。
這條線:
context.wordpuzzles.Select(i => i.textfileURL)
將返回一個IEnumerable的。然後你試圖把它轉換成一個字符串。 我想你想把這個IEnumerable中的所有文本分配給一個字符串?
然後Aggregate可以派上用場=)。
context.wordpuzzles.Select(i => i.textfileURL)
.Aggregate(string.Empty, (current, c) => current + c + "\n");
會導致這樣的:
字符串1 字符串2 等
不知道這是否是你真正想要的...
如果你只是想你可以使用FirstOrDefault。
例子:
context.wordpuzzles.FirstOrDefault(i => i.textfileURL.Contains("your criteria"))
你應該把你的項目(S)正確的先這樣嘗試其中之一:
public string GetfileURL()
{
return context.wordpuzzles.Single(i => i.condition = "yourCriteria").textfileURL.ToString();
}
或
public string GetfileURL()
{
return context.wordpuzzles.First(i => i.condition = "yourCriteria").textfileURL.ToString();
}
或
public string GetfileURL()
{
dim results = context.wordpuzzles.Where(i => i.condition = "yourCriteria").ToList();
'perform rest of code
}
但你gotto如果您確保執行Single調用,它在return語句中只有1行。
如果你不知道你有你可以添加.SingleOrDefault或.FirstOrDefault
你正在做正確的幾乎任何東西行,但如果你想選擇一個結果 - 使用FirstOrDefault()
。否則,你會得到IEnumerable<string>
。
Select
項目序列的每個元素到一個新的形式。所以它返回IEnumerable
而不是一個字符串。
什麼樣的錯誤你得到 –
'Select'返回'的IEnumerable <>'你是鑄造'string'。 – Matten
這會返回多個網址,您想要哪一個? –