繁体   English   中英

在DetailsView或FormView之外创建实体

[英]Creating Entities outside DetailsView or FormView

使用EntityFramework,我创建了一个包含许多DetailsViewFormView控件的页面,以尝试捕获要保存到sql server的调查信息(100%插入;不进行更新或删除)。 涉及的表/实体包括调查,问题,受访者,响应,答案和一些类型查找。 (调查包含一个问题列表,并由受访者完成。受访者的响应包含一个答案列表。一个答案可以回答问题。)希望所有这些都有意义。

我不想让用户在每个DetailsView或FormView中单击自动生成的插入按钮,而是想提供一个提交按钮来插入所有新数据,这是我目前正在尝试但未成功的代码。 本质上,我正在寻找一种方法来为每个* Form调用自动创建的插入按钮所调用的命令。

我发现执行此操作的方法是遍历DetailsView和FormView控件,在我进入ObjectContext时保存(附加)实体,然后调用SaveChanges()一次将它们全部插入到db中。 但是,我在访问新实体时遇到问题。 我似乎无法通过FormView / DetailsView本身访问它们,并且似乎无法访问* Views中的BoundField。

我试图将FormViews嵌套在FormViews中,因为可能,但是出现错误Type 'System.Web.UI.WebControls.FormView' does not have a public property named 'FormView'.

我将开始研究涉及与DetailsView EntityDataSourceObjectContext和/或EntityDataSource的解决方案,但在我看来,如果我从那边来解决问题,那么我不妨使用纯TextBox和只需遍历它们,即可在代码中创建所有实体内容,而不是让数据绑定功能生效。

有人可以指出我如何运行每个* Form的插入按钮命令,以将所有新创建的实体保存在每个DetailsView / FormView中,或者让我知道是否应该开始寻找另一个区域(例如ObjectContext或EntityDataSource)吗?

非常感谢
麦卡莱克斯

我是个白痴。

我只需要调用* Form的InsertItem方法。

不知道为什么我第一次读API时没有意识到。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM