Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何在MVC中维护独立的层?比如业务层和安全层_Asp.net Mvc - Fatal编程技术网

Asp.net mvc 如何在MVC中维护独立的层?比如业务层和安全层

Asp.net mvc 如何在MVC中维护独立的层?比如业务层和安全层,asp.net-mvc,Asp.net Mvc,我熟悉三个层次,即。查看模型和控制器 现在我想分离另外两层,即。安全层和业务逻辑层 除此之外 那我该怎么做呢 假设控制器正常,但我想在安全层决定哪个用户拥有该权限&如果它通过该层,它将进入业务层,在该层中,复杂的查询将像业务规则一样执行 那么,有谁能帮我编写小代码吗?3个MVC层实际上只适用于用户界面的角度,因此您注意到的另外两个层实际上是模型的一部分 在DDD(域驱动设计)类型的设计中,您的控制器将调用应用程序服务,该服务将处理与安全层的检查(如果操作得到授权),然后对您的业务层(即核心域模型

我熟悉三个层次,即。查看模型和控制器

现在我想分离另外两层,即。安全层和业务逻辑层 除此之外

那我该怎么做呢

假设控制器正常,但我想在安全层决定哪个用户拥有该权限&如果它通过该层,它将进入业务层,在该层中,复杂的查询将像业务规则一样执行


那么,有谁能帮我编写小代码吗?

3个MVC层实际上只适用于用户界面的角度,因此您注意到的另外两个层实际上是模型的一部分

在DDD(域驱动设计)类型的设计中,您的控制器将调用应用程序服务,该服务将处理与安全层的检查(如果操作得到授权),然后对您的业务层(即核心域模型层)执行操作,或者返回“拒绝访问”键入返回控制器的消息


或者,不使用应用程序服务层,您可以直接让控制器调用业务逻辑层,该层在内部执行安全检查(调用安全层),但这取决于您的业务逻辑有多复杂,将其与安全层的授权检查混合在一起可能不太清楚。

MVC框架应该是一个表示框架。。在3层体系结构中,它是表示层。。现在LINQtoSQL是一个数据访问层,它不应该位于表示层,而必须位于业务层(服务层)

此链接可能对您有所帮助。。

DDD是指领域驱动设计吗?是的,这就是我所说的DDD。为清晰起见进行了编辑。DDD真的对应用程序架构感兴趣吗?我认为它只是处理领域建模。DDD肯定包括分层体系结构和服务的概念。见第29页和第40页。