我正在开发一个仅供内部使用的小型Web应用程序。鉴于其简单的性质和目标受众,我认为这可能是一个使用ASP.NET动态数据项目快速启动并运行的好机会。到目前为止一切顺利,除了让我重新考虑整个计划的一个问题:
我需要能够通过网站上传文件。模型中有一个实体代表上传的文件。此实体具有文件内容,文件名和文件内容类型的属性。上传文件时,所有这些值都是从单个FileUpload
控件中获取的。
由于FieldTemplate
与实体属性具有一对一关联,因此我决定需要为File实体创建自定义EntityTemplate
。此时,我为具有FileUpload
控件的实体创建了“编辑”模板。我无法弄清楚的是,当用户点击“更新”链接时,如何将FileUpload
控件中的数据返回到实体中,并(最终)进入数据库。
非常感谢任何建议或指导。
答案 0 :(得分:1)
您可以在FiedlTemplate的ExtractValues方法中向字典添加其他值,您必须注意的是,如果这些值在页面模板中也显示为行或列,则它们将覆盖您添加的值。我通常将它们伪装成假,然后只在自定义字段模板中对它们进行反复处理。
注意,您可以从OnDataBinding事件的Row属性访问它们的初始值,您可以将该属性转换为实际类型,或使用通过buddy类添加的接口。