0
我試圖返回排除行的用戶點擊了隱藏到一個視圖,並生成一個cookie存儲該行的用戶希望隱藏的信息。從cookie獲取信息隱藏從一個GridView行中MVC3
我的問題是該Cookie只包含一個值,所以我的select語句一次只能排除一行。下面是我有:
public ActionResult Hide(int id)
{
HttpCookie cookie = new HttpCookie("HideCookie");
cookie.Value = id.ToString();
cookie.Expires = DateTime.Now.AddYears(1);
System.Web.HttpContext.Current.Response.Cookies.Add(cookie);
int i = Convert.ToInt32(Request.Cookies.Get("HideCookie").Value);
var quotes = from q in db.View1 where !q.Quote_ID.Equals(i) select q;
return View(quotes.ToList());
}
我試圖創建一個字符串,並不斷追加新值字符串,但它仍然只需要最後一個值點擊。
感謝您的答覆。這項任務需要我使用cookies來隱藏,所以我沒有選擇。我不得不改變分割和連接方法來讓語法工作。 hideItems = cookie.Value.Split(',')。ToList(); cookie.Value = string.Join(「,」,hideItems.ToArray()); 雖然hideItems是一個字符串,Quote_ID是int並且不能比較,但我無法獲得視圖來返回。我得到「LINQ to Entities不能識別方法System.String ToString()'的方法,並且此方法不能被轉換成存儲表達式。」當我嘗試使用它的ToString方法 – user1354780 2012-04-24 23:42:17
@ user1354780啊正確...請參閱更新。在進行比較之前,您可以將列表轉換爲列表。 –
McGarnagle
2012-04-24 23:44:54
看起來我在那裏有更多的錯別字(在string.join和string.split中)。現在應該是固定...看起來我需要更多的咖啡:-( – McGarnagle 2012-04-24 23:47:15