【问题标题】:EF Model Validation Values from database来自数据库的 EF 模型验证值
【发布时间】:2016-08-13 15:15:22
【问题描述】:

我想知道如何从数据库进行模型验证。 例如

我有一个班级叫User

它有属性public string UserName {get; set;}

该属性有数据注解属性[StringLength(100)]

我想动态更改这些值,我的意思是 100。我想制作管理面板,管理员可以在其中将这些值从 100 更改为他想要的任何值,例如 20。这只是一个示例。

我该怎么做?

例如,我有想法为每个属性创建新类 StringLenght 继承自 ValidationAttribute

MyOwnclass : StringLength 

所以StringLength 继承自ValidationAttribute

在这个类中,我可以创建 DBContext 并在覆盖的 IsValid 方法中读取这些值。但我不知道需要多长时间。例如,我有一个带有 15 个表单输入的注册视图。每个输入都会向数据库发出至少 1 个请求。性能可能不好?

Ss 还有其他方法可以将这些值存储在应用程序内存中吗?并在他更改此设置时在 Admin Controller 中更新它?

【问题讨论】:

标签: c# asp.net-mvc entity-framework


【解决方案1】:

我的两分钱,您可以将长度存储在单独的表格中,并从管理面板更改它。 每次插入/更新用户时,请先检查此变量。您可以使用存储过程或覆盖ValidateEntity 函数来验证新/更新用户的用户名。

【讨论】:

  • 是的,但我也想要客户端验证,我认为它不会像这样工作。
猜你喜欢
  • 2015-09-15
  • 1970-01-01
  • 1970-01-01
  • 2013-05-29
  • 1970-01-01
  • 2012-09-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多