asp.net – 用于存储表单字段和字段值的数据库架构建议
我的任务是创建一个应用程序,允许用户将数据输入到将保存的Web表单中,然后最终用于填充pdf表单字段.
我很难想出一种将字段值存储在数据库中的好方法,因为表单将是动态的(基于pdf字段). 在应用程序本身中,我将在哈希表(fieldname,fieldvalue)中传递数据,但我不知道将哈希值转换为db值的最佳方法. 我正在使用MS SQL server 2000和asp.net webforms.有没有人在做类似的事情? 解决方法
您是否考虑过在这里使用文档数据库?这只是他们解决的问题,比传统的RDBMS解决方案更好.就个人而言,我是
RavenDb的忠实粉丝.另一个相当不错的选择是
CouchDb.我会避免使用MongoDb,因为它在当前的实现中确实不是一个安全的数据位置.
即使您不能使用文档数据库,也可以通过将表设置为在传统列中使用序列化XML或json的有效负载字段来创建一些元数据,从而使SQL伪装成一个.这将让您在远离EAV-land时搜索元数据. EAV-land是一个可怕的地方. UPDATE 我不确定是否存在好的指南,但这个概念非常简单.基本思想是将要查询的部分分解为表中的“普通”列 – 这使您可以以标准方式进行查询.当您找到所需的记录时,您可以获取CLOB并根据需要反序列化它.在你的情况下,你会有一个看起来像这样的表: SurveyAnswers Id INT IDENTITY FormId INT SubmittedBy VARCHAR(255) SubmittedAt DATETIME FormData TEXT 一些提示:a)使用基于文本的序列化例程.给你一个解决数据错误的机会,真正有助于调试.b)对于SQL 2000,您可能需要考虑将CLOB(保存有效负载数据的TEXT字段)分解为单独的表.自从我使用SQL 2000以来已经很长时间了,但我的回忆是使用TEXT列对表做了坏事. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 如何确定字符串的第一个字符是否是VB.NET中的数
- asp.net-mvc – “一个MVC过滤器提供程序已经注册了另一个C
- ‘ASP._Page_sitecore_shell_client_Speak_Layouts_Layouts
- asp.net-mvc – ASP.NET MVC和ViewState
- Oracle 时间字段显示不正确,类型错误
- asp.net – ProviderManifestToken’2008’与之前遇到的’2
- 为什么在ASP.NET MVC中暂停超时?
- asp.net – 过滤掉字符串中的锚标记
- asp.net mvc 之旅—— 第三站 路由模板中强大的自定义IRou
- 当我尝试添加映射文件时,ASP.NET脚手架的问题
- asp.net – ASP .Net WorldPay集成
- asp.net – 在TableRowCollection上使用linq
- 使用Linq表达式在扩展方法中有趣(?)
- modelstate – asp.net mvc没有实体框架
- 集成ASP.NET身份的最佳做法 – 它们是否存在?
- asp.net-mvc-3 – 如何在ASP.NET MVC3控制器中访
- asp-classic – 使用ADO Stream逐行读取大文件?
- asp.net – 问题设置cookie到期DateTime.Max(999
- ASP.NET web.config文件是否失控?
- asp.net-web-api – 如何测试我的web api方法