문제

가 ASP.NET MVC 보기 포함하는 확인란에 대한 사용자-정의된 범주가 있습니다.

<td><% foreach (Category c in (List<Category>)ViewData["cats"]) {
       if (selCats.ContainsKey(c.ID)) { %>
       <input name="CategoryIDs" type="checkbox" value="<%=c.ID %>" checked="checked" />&nbsp;<%= c.Name%><% } 
        else { %>
       <input name="CategoryIDs" type="checkbox" value="<%=c.ID %>" />&nbsp;<%= c.Name%> <% } %>
     <% } %>
</td>

폼은 다음과 같은 컨트롤러 행동:

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(int id, int [] CategoryIDs)
{
    PostsDataContext db = new PostsDataContext();
    var post = db.Posts.Single(p => p.ID == id);
    UpdateModel(post, new[] { "Title", "Subtitle", "RawContent", "PublishDate", "Slug" });
    db.SubmitChanges();
    return Redirect("/archives/" + post.Slug);
}

양식이란 것을 변환하는 배열의 정수 Id"CategoryIDs",각각을 나타내는 선택한 카테고리입니다.나는 다음을 넣고 싶으로 이러한 협회를 포함하는 테이블은 두 개의 열PostID 및 Int.이것은 사용을 설정하는 것은 많은 연결 사이의 게시물 및 카테고리가 있습니다.

현재 저는 짐승을 강제로 그것은:반복을 통해,카테고리고,각각에 대해 추가 행하는 협회를 포함하는 테이블 카테고리 ID,and ID 의 포스트는 그것에 속한다.

하지만 내가 궁금해 있는 경우 청소 방법을 이렇게 자동으로서의 컨텍스트 ASP.NET MVC 및 LINQ SQL?

감사합니다!

도움이 되었습니까?

해결책

나는 어떻게 생각하시겠지요한...유일한 것은 내가 말할 것은 원하지 않는 경우 루프를 통해 ID 를 추가할 수 있습니다 그들과 함께 동시에"InsertAllOnSubmit"(지만 이것은 정말 단순 반복이 너무):

int[] categoryIDs = new int[] { 0, 1, 2 };

dataContext.PostCategories.InsertAllOnSubmit(
categoryIDs.Select(id =>
    new PostCategory
    {
        CategoryID = id,
        PostID = myPostID
    })
);

그러나 하나는 여전히과 같은 일을 당신이 무엇을 가지고있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top