标签: csla

有没有人有CSLA的实际经验?

我公司的主要Web应用程序迫切需要一组漂亮的库,以便以某种方式使其可维护和可扩展,我的一位同事建议CSLA.所以我买了这本书,但是:

程序员不再读书了

我想评估一下SOFlow社区对它的看法.

所以这是我的问题:

  1. 人们如何使用CSLA?
  2. 优缺点都有什么?
  3. CSLA真的不适合TDD吗?
  4. 我有什么选择?
  5. 如果你已经停止使用它或决定反对原因?

.net csla frameworks

51
推荐指数
11
解决办法
1万
查看次数

24
推荐指数
4
解决办法
2万
查看次数

使用Automapper导致堆栈溢出的循环引用

我正在使用Automapper将我的NHibernate代理对象(DTO)映射到我的CSLA业务对象

我正在使用Fluent NHibernate来创建映射 - 这很好用

Order遇到的问题是它有一个集合,OrderLines每个都有一个参考Order.

public class OrderMapping : ClassMap<OrderDTO>
{
    public OrderMapping()
    {
        // Standard properties
        Id(x => x.OrderId);
        Map(x => x.OrderDate);
        Map(x => x.Address);

        HasMany<OrderLineDTO>(x => x.OrderLines).KeyColumn("OrderId").Inverse();

        Table("`Order`");
    }
}

public class OrderDTO
{
    // Standard properties
    public virtual int OrderId { get; set; }
    public virtual DateTime OrderDate { get; set; }
    public virtual string Address { get; set; }

    // Child collection properties
    public virtual IList<OrderLineDTO> OrderLines { get; …
Run Code Online (Sandbox Code Playgroud)

c# csla circular-reference automapper-2

14
推荐指数
2
解决办法
1万
查看次数

Visual Studio 2012使用csla和实体框架进行测试

在VS2010中,我的MSTest测试运行得很好.

在VS2012中运行时出现错误.该测试使用自定义业务主体设置Csla.ApplicationContext.User.当要求EntityFramework提供新的ObjectContext时,我收到一个SerializationException,指出无法找到我的自定义业务主体类型.

在运行VS2012的测试运行器或Resharper7的测试运行器时,使用EntityFramework的所有测试都会失败.我试过NCrunch的测试跑步者,他们都通过了.

我该如何解决这个问题?

c# csla mstest entity-framework-4.3 visual-studio-2012

14
推荐指数
1
解决办法
1033
查看次数

有没有值得的CSLA替代品?

我的公司有兴趣将大型业务应用程序移植到.NET.我们计划开发桌面版和Silverlight版.我主要研究了CSLA框架(得到了岩石的书,已经过了一半)并发现它有点过度设计,数据层方面似乎也没那么精致.

是否还有其他框架声称要做CSLA正在做的事情?我不是在谈论ORM工具(例如L2S,EF,NHibernate.)我对支持业务规则的框架感兴趣,简单的n层架构,对象是域驱动的而不是数据库驱动的,业务对象的安全性等...

我知道我可以找到一些小框架来完成所需的一些工作(想到企业应用程序块),但我正在寻找一个包含所有内容的框架.

.net c# csla frameworks business-objects

13
推荐指数
2
解决办法
3612
查看次数

如何在EF中使用Include with Lambda?

根据这篇文章,你可以做到包括使用lambda表达式http://romiller.com/2010/07/14/ef-ctp4-tips-tricks-include-with-lambda/.

例如 ...

var blogsWithPosts = context.Blogs.Include(b => b.Posts);
Run Code Online (Sandbox Code Playgroud)

所以,我有......

IQueryable<Data.Patient> query = ctx.ObjectContext.Patients
                    .Include("Person");
Run Code Online (Sandbox Code Playgroud)

我想拥有它......

 IQueryable<Data.Patient> query = ctx.ObjectContext.Patients
                    .Include(row => row.Person);
Run Code Online (Sandbox Code Playgroud)

我添加了System.Data.Entity的导入...但仍然无法实现.我正在使用Csla,所以我的上下文对象设置为...

using (var ctx = Csla.Data.ObjectContextManager<ApplicationEntities>.GetManager(Database.ApplicationConnection, false))
 {
 }
Run Code Online (Sandbox Code Playgroud)

这可能是问题...任何帮助将不胜感激!

csla entity-framework

11
推荐指数
1
解决办法
2426
查看次数

我应该使用实体框架而不是原始ADO.NET

我是CSLA和实体框架的新手.我正在创建一个新的CSLA/Silverlight应用程序,它将取代已有12年历史的Win32 C++系统.旧系统使用自定义DCOM业务对象库并使用ODBC来访问SQL Server.新系统不会立即取代旧系统 - 它们必须在未来几年内与同一数据库共存.

起初我认为EF是最先进和最好的方式.在制作一个小型EF模型并且只有2个CSLA可编辑的根对象(我最终会有数百个对象,因为我的数据库有800多个表)时,我正在质疑EF的使用.

在当前的系统中,我需要多次对查询进行精细的细节性能调优,因为我可以100%控制生成的SQL.但是在EF看来,在幕后发生的这么多事情让我失去了控制权.像http://toomanylayers.blogspot.com/2009/01/entity-framework-and-linq-to-sql.html这样的文章并没有帮助我对EF的印象.

由于LINQ to EF,人们似乎喜欢EF,但由于我的标准在客户端和服务器之间作为标准对象传递,因此我似乎可以在没有LINQ的情况下轻松构建查询.我在WCF RIA中了解到有查询投影(或类似的东西)我可以做客户端LINQ,它在转换为实际SQL之前会移动到服务器,所以在这种情况下我可以看到EF的好处,但不是CSLA的好处.

如果我使用原始ADO.NET,我会在5年后后悔自己的决定吗?

最近有没有其他人做过这个选择,你走哪条路?

csla entity-framework

9
推荐指数
1
解决办法
2986
查看次数

验证和服务层或业务对象?

Martin Fowler建议使用服务层作为域模型和"数据加载器"之间的边界.但是,Rockford Lhotka建议在业务对象本身中构建验证,这正是CSLA.NET所做的.

将此抽象到服务层的好处显然是您的服务层可以跨多个业务对象协调活动/操作.但是,使用服务层而不是直接使用业务对象进行业务逻辑和验证有哪些其他优点和缺点?

csla design-patterns business-objects

8
推荐指数
1
解决办法
3267
查看次数

CSLA的单元测试?怎么样?什么?

有没有人在CSLA中有单元测试的例子.我觉得很难用这个框架实现TDD,并且想知道是否有任何简单的方法可以做到这一点.除了可以免费构建我的测试对象的TypeMock Isolator之外,还有其他的Mock Framework吗?如果您有任何建议和样品/示例,我会很高兴吗?谢谢.

.net c# csla tdd unit-testing

8
推荐指数
1
解决办法
1669
查看次数

做TDD和CSLA的最佳方式

我想知道人们曾经使用CSLA .NET 3.8及更高版本进行TDD的工具,模式等.

哪些部分最省力.是否存在完全未经测试的零件等.

任何和所有信息都是最受欢迎的.

谢谢

csla tdd

7
推荐指数
1
解决办法
363
查看次数