2011-01-05 79 views
3

我在我的HomeController下面的代碼:ASP.NET MVC IDENTITY_INSERT設置爲OFF

public ActionResult Create() 
     { 
      return View(); 
     } 

     [ValidateInput(false)] 
     [AcceptVerbs(HttpVerbs.Post)] 
     public ActionResult Create([Bind(Exclude = "Id")]Article articleToCreate) 
     { 
      if (!ModelState.IsValid) 
       return View(); 

      try 
      { 
       _db.AddToArticleSet(articleToCreate); 
       articleToCreate.posted = DateTime.Now; 
       _db.SaveChanges(); 

       return RedirectToAction("Index"); 
      } 
      catch 
      { 
       return View(); 
      } 
     } 

這是create方法

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %> 

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> 
    Create 
</asp:Content> 

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> 

    <div id="create"> 

     <h2>Create News Article <span>(<%=Html.ActionLink("Cancel", "Index") %>)</span></h2> 

     <% using (Html.BeginForm()) {%> 

      <fieldset> 
       <legend>Fields</legend> 
       <p> 
        <label for="headline">Headline</label> 
        <%= Html.TextBox("headline") %> 
       </p> 
       <p> 
        <label for="story">Story <span>(HTML Allowed)</span></label> 
        <%= Html.TextArea("story") %> 
       </p> 
       <p> 
        <label for="image">Image URL</label> 
        <%= Html.TextBox("image") %> 
       </p> 
       <p> 
        <input type="submit" value="Post" /> 
       </p> 
      </fieldset> 

     <% } %> 

    </div> 
    <!-- END div#create --> 

</asp:Content> 

我得到這個問題的看法時,我嘗試並提交數據是一個InnerException,說IDENTITY_INSERT設置爲off。但是,我的文章表(稱爲storyId)中的ID被設置爲自動遞增,並且也設置爲標識並且還被設置爲主鍵/索引。

我該如何解決這個問題?謝謝。

+0

我會:)一旦我得到了答案,我需要我會很高興地接受。 – Cameron 2011-01-05 19:33:44

+1

如果你沒有得到你需要的答案,那麼考慮用一些反饋來重新考慮問題,以改善答案。我已經看到至少有兩個問題,其中有人提供了反饋,而您根本沒有迴應。此外,如果有任何幫助,您的HTML無效。 「p」標籤中的輸入字段?!考慮使用'div'! – 2011-01-05 21:47:05

回答

3

您是否創建了Linq To SQL DBML文件,然後將數據庫架構更改爲所有自動增量?我在想你可能已經改變了模式,但忘了更新linq設計器。

只需在設計器中刪除表格並將其從數據庫中重新拖放即可。

+0

天才:)我只是刷新它。也接受你的答案! ;)認爲你也可以幫助這個呢? http://stackoverflow.com/questions/4608397/asp-net-mvc-sequence-contains-no-elements/4608420#4608420 – Cameron 2011-01-05 19:55:52

+0

我張貼我的答案給你的其他問題。 – 2011-01-06 02:03:46

相關問題