1

.EDMX

<Property Name="uid" Type="int" Nullable="false" StoreGeneratedPattern="Identity" />

EF は StoreGeneratedPattern = "Identity" を設定しましたが、まだデータベースに保存できないのはなぜですか? デバッグは、値が常に0であることを示しています。サーバーは挿入前にWebに値を返さないため、推測は非常に正しいですが、モデルは常に falseを検証し、 C#、エンティティフレームワーク、自動インクリメント 、および エンティティフレームワークを使用した自動番号を使用しまし たが、運が良ければ、私は何を間違っていますか?何か案が?

更新 1:

モデルとメタデータの図を追加しました。最初に EF DBを使用してクラスを生成したことを忘れていました

ASP.NET MVC ビュー

<div class="editor-field">
    @Html.HiddenFor(model => model.uid)
</div>

ASP.NET MVC コントローラー

[HttpPost, ValidateJsonAntiForgeryToken]
        public JsonResult Create(BasicUserInfo basicuserinfo)
        {
            if (ModelState.IsValid)
            {
                db.BasicUserInfoes.Add(basicuserinfo);
                db.SaveChanges();
            }
            else 
            {
                return Json(new { valid = "N", err = CaptureError() });
            }

            return Json(new { valid = "Y", route = Url.Action("Index") });
        }

脚本

            var self = this;
            var data = "";
            var _model = new model();
            var data = JSON.stringify({ "BasicUserInfo": $(e.currentTarget).serializeObject() });
                var _Create = new Create();
                _Create.fetch({
                    type: 'POST',
                    headers: headers,
                    data: data,
                    contentType: "application/json; charset=UTF-8",
                    success: function (data, textStatus, jqXHR) {
                        if (textStatus.valid == "Y") {
                            _model.AppendAddSuccess(textStatus.route);
                        } else {
                            _model.AppendFailed(textStatus.err);
                        }
                    },
                    error: function (jqXHR, textStatus, errorThrown) {
                        console.log(textStatus.statusText);
                    }
                });

SQL Server 2008 ここに画像の説明を入力

エラー

ここに画像の説明を入力

モーダル
ここに画像の説明を入力

メタデータ

ここに画像の説明を入力

4

1 に答える 1