私は一般的にEntity FrameworkとAsp.Netが初めてで、特定のフィールドのデフォルト値をFormViewに設定する方法を理解しようとしています。基本的なコードは次のとおりです。
<asp:FormView runat="server" ID="addObjForm"
ItemType="MySpace.Models.Obj"
InsertMethod="insertObj" DefaultMode="Insert"
RenderOuterTable="false" OnItemInserted="obj_ItemInserted">
<InsertItemTemplate>
<fieldset>
<ol>
<asp:DynamicEntity ID="DynamicEntity1" runat="server" Mode="Insert" />
</ol>
<asp:Button ID="Button1" runat="server" Text="Insert" CommandName="Insert" />
<asp:Button ID="Button2" runat="server" Text="Cancel" CausesValidation="false" OnClick="cancelButton_Click" />
</fieldset>
</InsertItemTemplate>
</asp:FormView>
そして背後にあるコード:
public void insertObj()
{
var item = new Obj();
TryUpdateModel(item);
if (ModelState.IsValid)
{
using (WebContext db = new WebContext())
{
db.Objects.Add(item);
db.SaveChanges();
}
}
}
外部キーで親を参照する子オブジェクトのデータを挿入する必要があり、この外部キーを GET 経由で Web フォームに渡すとします。この値を FormView に自動的に設定するにはどうすればよいですか?