Asp.Net MVC + CSLA + DDD 可能吗

2024-02-25

前几天,我被要求审查一个基于 ASP.NET MVC + CSLA + DDD(域驱动设计)的系统。该系统的第一个版本是基于ASP.NET MVC + CSLA。第二个版本是在此基础上添加了 DDD。原因是……嗯,我不知道是什么。当我查看两种不同架构的图表时,很明显第二个版本极其复杂。 CSLA 对象基本上使用了 Domain 对象。当你看到这样的东西时,你知道它已经闻起来很臭了,但很难证明为什么有人不应该这样做,除非 A) 对所有主题都有深入的了解,或者 B) 长期使用它。对于这个主题,我没有这些,但我知道如果我从头开始构建它,我就不会这样做,我接触的很多开发人员也不会这样做。

那么,亲爱的读者,遇到这种情况你会怎么做?我的想法是,如果您想使用 CSLA、MVC 和 DDD,那么您就表明立场并选择其中之一(CSLA 或 DDD)。如果你不这样做,厨房里就会有太多厨师。

如果您对此事有意见,请发表一些见解。


我的想法是,如果你想 使用 CSLA 和 MVC 和 DDD 然后你就可以了 一个立场并选择一个或另一个(CSLA 或DDD)。如果你不这样做,也有 厨房里有很多厨师。

我倾向于同意你的观点。如果有人想使用已经推出的 DDD 友好架构 + 支持框架来进行 DDD,我建议S#arp 架构 http://www.sharparchitecture.net/通过 CSLA。

尽管如此,有些人认为可以使用 CSLA 来承担 DDD 的某些方面。显然,DDD 纯粹主义者可能会对这种前景感到畏缩,但你不必成为纯粹主义者才能从 DDD 中获得一些东西。 Derick Bailey 有一个关于该主题的有趣博客:http://www.avocadosoftware.com/csblogs/dredge/archive/2007/02/19/687.aspx http://www.avocadosoftware.com/csblogs/dredge/archive/2007/02/19/687.aspx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Asp.Net MVC + CSLA + DDD 可能吗 的相关文章

  • 在 MVC 中处理错误、异常和 404 的最佳路由方法是什么?

    SO 和网络上有很多文章试图优雅地处理 404 和异常 从我读过的内容来看 最好的建议似乎是为 404 设置一条路线 如下所示 routes MapRoute 404 PageNotFound url new controller Erro
  • ASP.NET MVC 应用程序和 ASP.NET Web 应用程序有什么区别

    任何人都可以解释一下 ASP NET 中的 MVC 和 Web 应用程序之间的区别 在mvc中我们可以找到controllers文件夹 我们不能在 Web 应用程序中找到控制器文件夹吗 请消除我的困惑 MVC 使用控制器来编排模型和视图 以
  • 如何在 MVC4 的 UserProfile 中创建自定义附加字段

    我遇到了新的 ASP MVC 4 功能 它附带了新的成员资格数据库模式和新的初始化 在 mvc 3 和旧版本中 开发人员能够使用 web config 中的规范创建自定义用户配置文件字段 但现在我面临默认 mvc 4 项目中过滤器命名空间中
  • 安装 ASP.NET MVC 的修改版本

    我对 MVC 1 0 源代码进行了相对简单的更改 以纠正 DropDownList HtmlHelper 中的错误 在另一个问题中讨论过 https stackoverflow com questions 1614923 persistin
  • 从 ASP.NET Web API 返回 HTML

    如何从 ASP NET MVC Web API 控制器返回 HTML 我尝试了下面的代码 但由于未定义 Response Write 而出现编译错误 public class MyController ApiController HttpP
  • 丰富的领域模型和 ORM

    Martin Fowler 认为贫血领域模型是一种反模式 将持久性模型作为域模型进行滚动似乎也严重偏离 因为对象关系阻抗不匹配 http en wikipedia org wiki Object Relational impedance m
  • 连接尝试失败,因为连接方未正确响应

    我在 1and1 上有一个共享服务器 在我的 MVC 站点中 当我尝试连接到外部的另一台服务器时 出现以下错误 发送请求时发生错误 无法连接到 远程服务器连接尝试失败 因为连接方 一段时间后没有正确回应 或建立 连接失败 因为连接的主机未能
  • 无效操作。连接已关闭。 ASP.NET MVC

    这种情况并不经常发生 但有时我会收到一封通过电子邮件发送给我的异常报告 指出这段代码 我想知道您是否发现以下代码有任何问题 我无法让它在本地失败 并且使用断点跟踪数据总是会一步步给出正确的结果 namespace DomainModel C
  • UIHint 不使用 EditorTemplate

    我有一个这样的模型 public class MyModel ScaffoldColumn false public int CharityId get set UIHint Charities public SelectList Char
  • 为什么 DropDownListFor 无法识别编辑器模板中的选定值?

    我有以下名为 DropDown cshtml 的编辑器模板 这list部分工作正常 模板使用了一些我所做的巫毒来获得所需的SelectList from ViewData 控制器将视图模型中的所有选择列表放入ViewData 并且列表方面没
  • 在 asp.net mvc 4 中使用 LinkedIn OAuth“登录失败”

    我正在查看 asp net mvc 4 附带的默认 OAuth 实现 它绝对令人印象深刻 因为我所要做的就是在 AuthConfig cs 中添加这一行 OAuthWebSecurity RegisterLinkedInClient key
  • 在ConfigureServices中注入依赖

    在我的 ASP Net Core 应用程序中 我需要在以下位置注入一些依赖项 在我的例子中是一个存储库 ConfigureServices method 问题是该方法不允许使用多个参数来注入依赖项 该怎么办呢 这是我的代码 public v
  • 如何在ListBox中加载大量数据? ASP.NET MVC 应用程序

    我正在使用 ASP NET MVC 应用程序 要求用户能够从可能包含超过 30 000 个条目的列表框中选择一个项目 是否有一种使用 Ajax 调用来填充此 ListBox 内容的动态方法 效果良好 我是否最好只填充服务器上的 ListBo
  • 从 .Net MVC 视图获取 HTML,而不在浏览器中实际渲染视图?

    我的控制器中有一个 ActionResult 我想从中发送 HTML 电子邮件 该电子邮件的正文是由视图生成的 我可以在传递模型时获取视图的结果并避免将其发送到浏览器 而不是在控制器中使用 2 个 actionresults 方法吗 Mvc
  • 如何为客户端和服务器缓存设置不同的缓存过期时间

    我想让某些页面为客户端提供 10 分钟缓存 为服务器提供 24 小时缓存 原因是如果页面发生变化 客户端将在 10 分钟内获取更新版本 但如果没有任何变化 服务器只需每天重建一次页面 问题在于输出缓存设置似乎覆盖了客户端设置 这是我的设置
  • 包括过滤器子集合[重复]

    这个问题在这里已经有答案了 我在为 LINQ 查询中包含的项目添加一些过滤条件时遇到一些困难 我的查询就像 var item Context Order Include Inner Include Inner first Include I
  • 阻止未确认电子邮件的用户使用 Identity 2 登录 ASP.Net MVC

    在 Microsoft Identity 2 中 用户可以确认我从以下位置下载了 Identity 2 示例项目的电子邮件地址here https www nuget org packages Microsoft AspNet Identi
  • ASP.NET MVC 应用程序中的工作单元模式

    我一直在看这个优秀的blog http www nhforge org wikis patternsandpractices nhibernate and the unit of work pattern aspx标题为 NHibernat
  • Visual Studio 智能感知搞砸了

    所以我是 MVC4 和 C 的新手 我已经设计这个网站大约两周了 智能感知没有任何问题 两天来 Visual studio 告诉我 Viewbag 和其他 命令不是我的项目的一部分 我可能错过了一些东西 或者它告诉我 Viewbag 在当前
  • 使用实体框架重叠约会

    我将 asp net mvc 与实体框架一起使用 我有一个包含 startat 字段 endat 字段和 roomid 字段 称为 SpaceConfigurationId 的约会列表 并且希望查找给定房间已重复预订的约会列表 可以假设 e

随机推荐

  • 非阻塞 IO 与异步 IO 以及 Java 中的实现

    尝试为自己总结这两个概念之间的区别 因为当我看到人们在一个句子中使用这两个概念时 我真的很困惑 例如 非阻塞异步 IO 我试图弄清楚它是什么意思是 因此 根据我的理解 非阻塞 IO 是操作系统在有任何数据准备好时处理 IO 的主要机制 否则
  • AWS Glue 爬网程序未创建表

    我在 AWS Glue 中创建的爬网程序在成功完成后不会在数据目录中创建表 爬网程序大约需要 20 秒才能运行 日志显示它已成功完成 CloudWatch日志显示 基准 为爬网程序运行启动爬网 基准 分类完成 将结果写入DB 基准 完成写入
  • 使用 Android 设备将实时视频流发送到 wowza 流引擎

    我想将实时视频流从我的 Android 设备发送到 wowza 流引擎 我在此使用示例blog http www walking productions com notslop 2013 01 16 android live streami
  • 使用 IServiceProvider 获取会话服务

    我需要使用 IServiceProvider 访问 ASP NET Core 1 0 中的 ConfigureService 方法中的会话变量 我有一个使用委托 lambda 表达式初始化的服务 可以从任何地方返回值 在此上下文中 此 la
  • Java中的动态方法调度[重复]

    这个问题在这里已经有答案了 以下是关于我的疑问的代码片段 class A void someMethod A param System out println A class C extends A void someMethod C pa
  • 仅使用 Java.IO 从文件读取/写入字节

    在 Java 中 我们如何将字节数组写入文件 并从该文件中读回 是的 我们都知道已经有很多这样的问题 但由于完成这项任务的方法有很多 所以它们变得非常混乱和主观 因此 让我们缩小问题的范围 Domain 安卓 Java 我们想要什么 快 尽
  • 如何删除默认标记?

    我正在使用 Google Map API V3 我注意到这里有很多标记 尽管我不需要它们 例如 一些学校或其他地方 点击时会出现InfoWindows 有什么办法可以删除它们还是不可能 地图上唯一应该显示的标记是您自己添加的标记 愿意分享您
  • SimpleAudioEngine Cocos2d 内存泄漏

    I am running Instruments and it indicates that the SimpleAudioEngine is leaking memory The screenshot is attached The me
  • 如何从 ASP.NET Web 服务生成 JSONP 以进行跨域调用?

    我编写了一个返回 JSON 的 Web 服务 并尝试使用 jQuery 调用它 如下所示 ajax contentType application json charset utf 8 url http examplewebsite com
  • 保护 Java 中的 REST API [已关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在 Java 中使用 Jersey 构建 REST API 我想使用 API 令牌安全方案来保护敏感
  • Mercurial中如何重复合并分支

    我们在工作中使用 Mercurial 我希望有一个类似于我使用 SVN 的设置 Trunk Tags 生产 Branches 由于 Mercurial 本身支持分支 因此我知道如何创建命名分支 但我找不到任何有关如何重复合并 Trunk 与
  • 如何在 recyclerView 向下滚动时折叠后隐藏工具栏

    如何在recyclerView向下滚动时折叠后隐藏工具栏 在recyclerView向上滚动时显示工具栏 并在列表末尾展开CollapsingToolbarLayout 现在 CollapsingToolbarLayout 只是折叠 工具栏
  • 如何从类路径加载属性文件? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions getResourceAsStrea
  • 在 django 中使用 Pre_delete 信号

    在我的应用程序中 我想跟踪所有正在删除的问题 所以我在我的模型文件中创建了一个类 表 class Deleted models Model question models IntegerField null True blank True
  • MySQL:从 sql 脚本文件在事务内执行 LOAD 语句

    我想从一些 csv 文件加载我的表格 我希望所有数据导入都是事务绑定的 即 如果任何数据导入中发生错误 其他表中加载的所有记录也会回滚 load 语句是从如下所示的 sql 文件执行的 SET AUTOCOMMIT 0 START TRAN
  • 带分类器的 Ivy 检索

    我有以下内容ivy xml
  • 如何给AutoHotkey脚本添加管理员权限?

    我将其编译为可执行文件 但要打开它 我必须右键单击并按 以管理员身份运行 我希望它每次运行时都请求管理员权限 但该怎么做呢 我不能这样做 因为当我将其复制到第二台计算机时它不起作用 尝试将其添加到自动执行部分 脚本顶部 If the scr
  • Ruby(猴子修补数组)

    我在猴子修补数组类时遇到问题 这项作业有8 specs被满足 我只会向您提供我遇到问题的部分的 RSpec 和书面要求 因为其他一切似乎都通过了 以下是 Array Class Monkey 补丁的书面要求 写一个新的new map的实例上
  • Flex 布局混合行和列

    我可以使用这个布局float容易地 但很难处理弹性盒 css a background red float left width 30 height 100px b c background green overflow hidden he
  • Asp.Net MVC + CSLA + DDD 可能吗

    前几天 我被要求审查一个基于 ASP NET MVC CSLA DDD 域驱动设计 的系统 该系统的第一个版本是基于ASP NET MVC CSLA 第二个版本是在此基础上添加了 DDD 原因是 嗯 我不知道是什么 当我查看两种不同架构的图