草庐IT

软件架构

全部标签

c# - 不了解在系统架构中的何处创建 IoC 容器

假设我有以下4个.net程序集:Winforms用户界面业务逻辑SQLServer数据访问(实现IRepository)通用接口(interface)(IRepository等的定义)我的业务逻辑(2)使用构造函数依赖注入(inject)通过IRepository(在4中定义)调用数据访问层(3)。然而,当我创建一个业务对象时,我需要传入一个实际的存储库。我通过在我的业务逻辑层中使用一个单例类来返回当前正在使用的实现IRepository的具体对象来实现这一点。我得出的结论是这是一件坏事,因为我的业务逻辑层现在必须引用3和4。我想我需要一个IoC容器,但问题是我在哪里创建/放置它,因为

c# - 在 3 层架构中使用 DTO

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。我使用的是简单的3层架构。在这里,我使用DTO类在UI、BL和DL之间进行通信。那么层与层之间有没有更好的通信方式呢?或者这是正确的方法?

C#类/对象可视化软件

在VisualStudio2005和更早版本中,您可以将代码导出到Visio并查看对象之间的关系以及它具有的方法、属性和字段。这很棒,因为它允许您调整外观以改善外观。在VS2008中,该选项消失了,取而代之的是(据推测)类图系统。它很实用但不漂亮。我正在寻找的是一些软件,它可以让我以更漂亮的方式进行可视化,或者至少为我提供足够的选项来过滤、排列等,以便我可以在其他方面进行修饰。 最佳答案 您是否要求软件免费?如果没有,您可能会考虑像SparxEnterpriseArchitect这样的UML工具.它可以导入您的代码,并且有两个在Vi

c# - 使用C#的指纹读取器软件

我计划使用生物识别输入来验证我的应用程序的用户输入。我在网上做了一些研究,并提出了以下生物识别输入选项:指纹人脸识别视网膜扫描虹膜扫描语音识别签名验证其中我觉得指纹是最合适的选择。但这样做的问题是指纹设备的API会随其硬件而变化。因此,我认为我很可能需要针对多设备API进行编码,我认为这并不友好。我打算用C#进行编程。有什么办法解决这个问题。因为我是新手,所以我一无所知。解决这个问题的方法是什么?项目范围有多大?我应该为这个项目采取什么方法。 最佳答案 该问题并非指纹读取器独有,它会应用于您列表中的所有其他选项和许多其他外围设备。事

c# - 使用 XSD 架构的 Xml 验证

以下代码帮助我验证具有XSD架构的XML文件。XmlReaderSettingssettings=newXmlReaderSettings();settings.Schemas.Add(null,xsdFilePath);settings.ValidationType=ValidationType.Schema;settings.ValidationEventHandler+=newSystem.Xml.Schema.ValidationEventHandler(settings_ValidationEventHandler);XmlDocumentdocument=newXmlDoc

c# - .NET Entity Framework 项目布局(架构)

我正在尝试确定如何最好地构建.NETEntityFramework项目以实现良好的分层方法。到目前为止,我已经在玩家拥有和经营行星的基于浏览的游戏中进行了尝试。这是我得到它的方法:网站这包含了所有的前端。C#项目-MLS.Game.Data这包含带有我所有数据映射的EDMX文件。这里没有其他内容。C#项目-MLS.Game.Business这包含各种我称为“管理器”的类,例如PlanetManager.cs。星球管理器有各种用于与星球交互的静态方法,例如getPlanet(intplanetID),它将返回从MLS.Game.Data生成的代码对象。在网站上,我会做这样的事情:varp

c# - 已建立的连接被主机中的软件中止

抱歉,如果这有点啰嗦,但我认为多发帖总比少发帖好。这也是我在这里的第一篇文章,所以请原谅。一段时间以来,我一直在努力解决这个问题。无济于事,希望那里有一个以前遇到过这种情况的天才。这是一个间歇性问题,很难重现。我正在运行的代码只是调用一个网络服务Web服务调用在一个循环中(因此我们可以多次执行此操作,1500次或更多次)这是导致错误的代码:HttpWebRequestgroupRequest=null;WebResponsegroupResponse=null;try{XmlDocumentdoc=newXmlDocument();groupRequest=(HttpWebReques

c# - Raven DB 的数据访问架构

RavenDB可以使用哪些数据访问架构?基本上,我想通过接口(interface)分离持久性,所以我不会将下划线存储暴露给上层。IE。我不希望我的域看到来自RavenDB的IDocumentStore或IDocumentSession。我已经实现了通用存储库模式,这似乎行之有效。但是,我不确定这实际上是正确的方法。也许我应该转向命令查询隔离或其他东西?你有什么想法? 最佳答案 就个人而言,我对命令模式并没有真正的经验。我看到它被用于RobAshton'sexcellenttutorial.对于我自己,我将尝试使用以下内容:-存储库模

c# - 如果我的软件使用它,我是否必须在每个客户端上安装它?

如果我们用c#(或基本上是.Net)开发一些软件,我们不会将visualstudio安装到任何客户端。客户端只需安装所需的.Net框架(1.0、1.1、2.0、3.0等),我们就可以开始了。同理,如果我们在VC2008中制作一个应用程序,他只需要有VisualC++2008runtime(MS网站免费提供,大约4-5Mb)。所以,基本上,我们只需要运行时环境。但是没有任何SQLServer2008运行时(或者我不知道?)。所以,我的问题是,如果我的软件使用的是SQLServer2008,客户端需要什么运行时(或其他任何东西)才能运行?此外,还有一件事,我看到有一个SQLServerEx

软件工程头歌软件测试(实验五)软件项目管理(实验六)

白盒测试单元测试软件维护维护的事件流通常维护的事件流如下图所示:维护记录的内容1)程序标识;2)源语句数;3)机器指令数;4)使用的程序设计语言;5)程序安装的日期;6)自安装以来程序运行次数;7)自安装以来程序失效次数8)程序变动的层次和标识;9)因程序变动而增加的源语句数;10)因程序变动而删除的源语句数;11)每个改动耗费的人时数;12)程序改动的日期;13)软件工程师的名字;14)维护要求表的标识;15)维护类型;16)维护开始和完成的日期;17)累计用于维护的人时数;18)与完成的维护相联系的纯效益。评价维护活动的7个维度(1)每次程序运行平均失效的次数;(2)用于每一类维护活动的总