1
我是Linq的新手。我搜索並搜索了一個解決方案,並找不到任何東西。我有一個Linq查詢,我想在將它傳遞給下拉列表之前將一行(「選擇用戶」)插入頂部。我一直在試圖使用聯盟,但現在利用(它一直告訴我,我的對象不支持聯盟方法)。在嘗試插入一行之前,我的代碼非常簡單。mvc LinqToSql爲下拉列表添加「Select User」行
public SelectList DropDown_Users()
{
var context = new VivarianDataContext();
var query = from t in context.AspnetUsers
select new { t.UserId, t.LastName };
list = new SelectList(query.AsEnumerable(), "UserId", "LastName");
return list;
}
現在我嘗試插入一行,我發現這在互聯網上,似乎說他的解決方案將工作。但它充滿了錯誤。 http://magicode.wordpress.com/2009/08/20/inserting-an-item-in-iqueryable-object-using-union-method-and-linq/
我試着用下面的代碼來實現它,但它不能編譯。
public SelectList DropDown_Users()
{
SelectList list;
//get the original data
var context = new SQL2005633131VivarianDataContext();
var query = from t in context.AspnetUsers
select new { t.UserId, t.LastName };
//create a dummy table with an empty row
var AllUsers = new List<AspnetUsers>();
var BlankUser = new AspnetUsers()
{UserId=System.Guid.Empty, LastName="Select One"};
AllUsers.Add(BlankUser);
//use Union to join the data - ERRORS HERE - doesn't support Union
var newTable = AllUsers.Union(query);
list = new SelectList(newTable.AsEnumerable(), "UserId", "LastName");
return list;
}
太累了我會失明。任何幫助?