当有人访问我的网站时,如果没有任何管理员注册,他们应该被重定向到该管理员注册页面。 现在,只有在没有任何管理员注册的情况下才会发生这种情况。因此,只有当数据库是新鲜且空且没有数据时,才会发生这种情况。
我知道我可以在所有 Controller 上使用验证属性进行检查。但我发现这有点黑客行为,而且......无论如何,当有 1 个注册时,检查应该被完全删除。 那么还有其他方法可以实现这一点吗?
最佳答案
如果您有一个所有 Controller 都继承自的基本 Controller ,您可以将您提到的“validationattribute”放在基本 Controller 上,以触发对每个请求的验证(如果这是您想要的)。
编辑
您可以在 web.config 中存储一个名为 AdminIsRegistered 的全局变量,该变量在应用程序首次发布时设置为 false
。然后,当第一个管理员注册 like this 时,以编程方式更改该值并将其设置为true
。然后,您在基本 Controller 上设置的自定义属性可以简单地检查每个请求的该值,只要将其设置为 false,该属性就会将用户重定向到注册操作,否则它不会执行任何操作。
关于asp.net - 进入主站前先注册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9341364/