2014-11-01 1 views
0

JQuery Ajax 호출의 GET 요청에 guid 목록을 전달 중입니다.Request.QueryString을 사용하여 ASP.NET에서 정렬 열 업데이트 Array

내 ASP.NET 컨트롤러 쪽 목록을 반복하고 새로 정렬 된 목록과 일치하도록 Display_Sort 열을 업데이트하고 싶습니다.

내 ID는 Guid이며 다음 코드에서 형식 오류가 발생합니다. 왜냐하면이 문자열이 Db에 전달되는 문자열이기 때문입니다. 그러나 항목 (문자열)을 Guid로 변환 할 수 없습니다.

Guid (항목)을 시도했지만 생성자가 허용됩니다. 내가 무엇을 놓치고 있는지 모르겠다.

 //REORDER HOME ASSETS 
    public ActionResult ReOrderHome() 
    { 
     using (var db = new IFEntities()) 
     { 
      var myString = Request.QueryString; 
      var i = 1; 

      foreach (var item in myString) 
      { 
       var myObj = db.HomeContents.Find(item); 
       myObj.display_order = i; 
       db.SaveChanges(); 
       i++; 
      } 
     } 

답변

0

당신은 itemGUID에 변환 다음과 같이 비교할 수 있습니다 여기에

는 코드입니다.

var myObj = db.HomeContents.Find(new Guid(item));

또는, select 대신 find 사용할 수 있습니다. 선택 구문 -

foreach (var item in myString) 
{ 
    var myObj = db.HomeContents.Select(p => p.<GUID_COLUMN_NAME> == item); 
    myObj.display_order = i; 
    db.SaveChanges(); 
    i++; 
} 

GUID_COLUMN_NAME을 실제 열 이름으로 바꿉니다.