2010-07-07 60 views
0

我正在开发一个小型的内部使用的Web应用程序。鉴于其简单的性质和目标受众,我认为这可能是一个很好的机会,可以使用ASP.NET动态数据项目快速启动并运行。到目前为止这么好,除了一个问题,我重新考虑整个计划:ASP.NET动态数据和上传文件

我需要能够通过网站上传文件。模型中有一个实体代表上传的文件。该实体具有文件内容,文件名和文件内容类型的属性。上传文件时,所有这些值都是从一个FileUpload控件中获取的。

由于FieldTemplate与实体属性具有一对一关联,因此我决定需要为File实体创建自定义EntityTemplate。此时,我为具有FileUpload控件的实体创建了一个“编辑”模板。我无法弄清楚的是,当用户点击'更新'链接时,我如何从FileUpload控制中将数据返回到实体中并(最终)返回到数据库中。

任何意见或指导,非常感谢。

回答

1

您可以将其他值添加到FiedlTemplate的ExtractValues方法中的字典中,您必须注意的是,如果这些值在页面模板中也显示为行或列,则它们将覆盖您添加的值。我通常将它们支撑为假,然后仅在自定义字段模板中对其进行参考。

请注意,您可以从OnDataBinding事件的Row属性中访问它们的初始值,您可以将该属性强制转换为实际类型或使用通过好友类添加的接口。