2012-09-07 57 views
0

比方說,我們有一個有3場預定義的形式:名字,姓氏,電子郵件這種形式被映射到表用戶提供:身份證,名字,姓氏,電子郵件創建的形式MVC/SQL服務器動態字段

比方說,一個用戶想要添加一個新的字段,例如BirthDate。用戶將選擇該字段的類型,這裏的DateTime texbox和字段旁邊的文字如出生日期,但如何在用戶表中添加此列?

任何幫助將高度讚賞

約瑟夫

回答

1

沒有爲用戶字段動態地添加到實際的數據庫表中,沒有現實的途徑不是讓你有一個新的領域,如「出生日期」或'鞋子尺寸'。

但是,您可以通過更改應用程序的核心設計來捕獲用戶的動態數據。而不是將數據存儲在固定的「水平」表中,您需要抽象數據庫並將每個值存儲爲單獨的記錄 - 有點像「垂直」表。

所以,你將有一個表像

Field, Data, Type 
--------------------------- 
"FirstName", "John", string 
"LastName", "Smith", string 
"DateOfBirth", "01/01/1950", datetime 
"ShoeSize", "4", int 

它的架構不是技術的問題。

有一篇非常好的文章here,它在更深入的討論它。

理解這一點非常重要,它確實使得您的應用程序更加抽象,安全性更低,而且更加複雜。除非您完全理解所涉及的額外工作,否則我不會建議嘗試這樣做。

+0

謝謝你的擡頭。我很感激。 – user1027303