编译调试CSLA .NET Framework v1.5

编译调试CSLA .NET Framework v1.5

 

Posted by: Rickie Lee (www.cnblogs.com/rickie )

Date: Apr. 2005

CSLAComponent-based, Scalable, Logical Architecture的简写,CSLA .NetRockford Lhotka基于.Net设计的一套N-tier分布式框架。

 

如果对该框架感兴趣,可以从下面的链接下载CSLA .NET源程序,先设置CLSA.NETv1.5/cslacs10/www/DataPortalcs目录的Web applicationDataPortalcs)属性,下一步在本地编译调试:

1.创建你自己的key文件:

    sn -k mykey.snk

2.在VS.NET中打开CSLA .NET项目,并编辑CSLA.Server.DataPortalCSLA.Server.ServicedDataPortalCSLA.Resources等项目中的AssemblyInfo.cs文件,使keyfile属性指向你所创建的key文件:

[assembly: AssemblyDelaySign(false)]

// TODO: update this to point to your key

[assembly: AssemblyKeyFile(@"c:/download/mykey.snk")]

[assembly: AssemblyKeyName("")]

3.修改DataPortal Web项目中web.config配置文件,设置相应的数据库连接:

  <appSettings>

    <add key="Authentication" value="CSLA" />

    <!-- TODO: update connection strings as appropriate -->

              <add key="DB:PTracker" value="data source=ineroth;initial catalog=PTracker;user id=ptracker;password=ptracker" />

              <add key="DB:Security" value="data source=ineroth;initial catalog=Security;user id=ptracker;password=ptracker" />

              <!--

    <add key="DB:PTracker" value="data source=ineroth;initial catalog=PTracker;integrated security=SSPI" />

    <add key="DB:Security" value="data source=ineroth;initial catalog=Security;integrated security=SSPI" />

              -->

  </appSettings>

在正式的Production环境中,一般需要为每一个application创建一个单独的DataPortal Web项目。DB:PTracker application的数据库连接信息,DB:Security 则为用来进行安全验证的数据库连接信息。

4.编译CSLA .NET项目。

现在,应该编译通过了。

 

References:

1. Rickie, CSLA .Net学习资料, http://www.cnblogs.com/rickie/archive/2005/03/23/123862.html

2. Rockford Lhotka’s homepage, http://www.lhotka.net/Default.aspx

 

 

posted on 2005-04-11 13:13 Rickie 阅读(47703) 评论(9)   编辑  收藏 收藏至365Key 所属分类: F.CSLA .Net
href="http://www.cnblogs.com/rickie/Services/Pingback.aspx" rel="pingback"/>

评论

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-11 16:51 Teddy's Knowledge Base
csla好像是完全通过reflection构造business对象和调用对象的方法呢~~

有点怕怕~~ 真怀疑它的性能呢!
  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-11 23:41 Rickie
To Teddy,

Rockford has written an article about what you concerned, where he thinks it's not a performance issue.

Justifying reflection in the DataPortal
http://www.lhotka.net/Articles.aspx?id=4320e7f2-dd14-4928-b552-4eb0cb82cd68

  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-12 11:56 Teddy
"perhaps your performance requirements can't be met by the current implementation" ---- 这是作者文章中最后的话,我还是感觉他过于乐观了,像这类对象构建和方法调用,对一个对性能略有要求的应用来讲都是完全可以避免的性能损失,for each使用的类型转换,实际没有用反射,而一般来讲dataaccess中用反射来动态加载数据访问模块则可以在加载后作为全局共享变量,不用每次都创建的。但,他的这个方式可是业务逻辑层啊,逻辑简单相对于其它代码比例小的话还好,否则对大多数逻辑复杂度是应用的主要复杂度的应用,性能影响肯定会很大了呢~~

当然对性能要求不高的应用又比如单机客户机应用来讲还是很合适的,可以极大简化代码~~

另一方面,我总是觉得凡是反射,必然可以构造一个与其完全等价的代码生成方案以在必要时与反射放按切换,或者,开发原型时用反射,后期发布前再改成代码生成,可能比较好~~
  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-12 14:33 Rickie
"他的这个方式可是业务逻辑层啊,逻辑简单相对于其它代码比例小的话还好,否则对大多数逻辑复杂度是应用的主要复杂度的应用,性能影响肯定会很大了呢~~ "
===
Sorry, 我没有明白你的意思。Server端的DataPortal采用Reflection机制获取BusinessClass类型,并创建相应的对象实例,然后通过Reflection调用业务方法,这与"逻辑复杂度"有什么关系?

另外,作者Rockford是以实际的数据测试来验证Refection对CLSA.NET性能影响的,实际测试比较应该是一种值得推荐的方式。

  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-12 17:09 Teddy
作者的实测数据没有给出真正的测试项目,我觉得很难说明问题。
逻辑层复杂度的问题是指,罗基层对象构造的频率远高于数据访问,之前一段时间在博客园也有不少朋友测试反射的性能损失,如果访问达到一定的频繁度的话对性能影响挺严重的,所以至少我不喜欢这样用反射。

当然也要具体情况具体分析,最好对特定的项目做性能实测分析。
  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-12 23:36 Rickie
To Teddy,

不错,如果有时间,我会自己测试一下CSLA .NET中Reflection对性能的影响如何。

  

#  re: 编译调试CSLA .NET Framework v1.5 2005-05-20 17:12 舞者
我也正在研究CSLA.NET,有时间联系:MSN:neu_dancer@hotmail.com
#  re: 编译调试CSLA .NET Framework v1.5 2005-04-11 16:51 Teddy's Knowledge Base
csla好像是完全通过reflection构造business对象和调用对象的方法呢~~

有点怕怕~~ 真怀疑它的性能呢!
  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-11 23:41 Rickie
To Teddy,

Rockford has written an article about what you concerned, where he thinks it's not a performance issue.

Justifying reflection in the DataPortal
http://www.lhotka.net/Articles.aspx?id=4320e7f2-dd14-4928-b552-4eb0cb82cd68

  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-12 11:56 Teddy
"perhaps your performance requirements can't be met by the current implementation" ---- 这是作者文章中最后的话,我还是感觉他过于乐观了,像这类对象构建和方法调用,对一个对性能略有要求的应用来讲都是完全可以避免的性能损失,for each使用的类型转换,实际没有用反射,而一般来讲dataaccess中用反射来动态加载数据访问模块则可以在加载后作为全局共享变量,不用每次都创建的。但,他的这个方式可是业务逻辑层啊,逻辑简单相对于其它代码比例小的话还好,否则对大多数逻辑复杂度是应用的主要复杂度的应用,性能影响肯定会很大了呢~~

当然对性能要求不高的应用又比如单机客户机应用来讲还是很合适的,可以极大简化代码~~

另一方面,我总是觉得凡是反射,必然可以构造一个与其完全等价的代码生成方案以在必要时与反射放按切换,或者,开发原型时用反射,后期发布前再改成代码生成,可能比较好~~
  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-12 14:33 Rickie
"他的这个方式可是业务逻辑层啊,逻辑简单相对于其它代码比例小的话还好,否则对大多数逻辑复杂度是应用的主要复杂度的应用,性能影响肯定会很大了呢~~ "
===
Sorry, 我没有明白你的意思。Server端的DataPortal采用Reflection机制获取BusinessClass类型,并创建相应的对象实例,然后通过Reflection调用业务方法,这与"逻辑复杂度"有什么关系?

另外,作者Rockford是以实际的数据测试来验证Refection对CLSA.NET性能影响的,实际测试比较应该是一种值得推荐的方式。

  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-12 17:09 Teddy
作者的实测数据没有给出真正的测试项目,我觉得很难说明问题。
逻辑层复杂度的问题是指,罗基层对象构造的频率远高于数据访问,之前一段时间在博客园也有不少朋友测试反射的性能损失,如果访问达到一定的频繁度的话对性能影响挺严重的,所以至少我不喜欢这样用反射。

当然也要具体情况具体分析,最好对特定的项目做性能实测分析。
  

#  re: 编译调试CSLA .NET Framework v1.5 2005-04-12 23:36 Rickie
To Teddy,

不错,如果有时间,我会自己测试一下CSLA .NET中Reflection对性能的影响如何。

  

#  re: 编译调试CSLA .NET Framework v1.5 2005-05-20 17:12 舞者
我也正在研究CSLA.NET,有时间联系:MSN:neu_dancer@hotmail.com
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSLA.NET是一个在分布式环境下只通过修改配置文件就可以实现N层部署的框架. 它致力于构建丰富,强大而灵活的业务层,包含了验证,权限,数据门户等标准化的解决方案,使你的业务对象更加标准和灵活.它提出了移动对象(Mobile Object) 的概念,使业务对象在不同的服务器上物理性的移动.但它并不失灵活性,其数据门户对ADO.NET,LINQ, ADO.NET Entity Framework,Nhibernate等都能够支持.CSLA.NET还支持在业务对象上构建WPF、ASP.NET(Web Forms、AJAX和 MVC)和Windows Forms,WCF service,Windows Workflow,web Services,Silverlight等用户接口.      CSLA.NET开始于2001年,已经有8年时间了.现在已经被使 用在很多项目中.最新发布的3.6版本包括CSLA.NET  for Windows和CSLA.NET for Silverlight两个版本.其中CSLA.NET for Silverlight对Silverlight2.0提供了无缝支持.      CSLA.NET提供核心功能:         完全支持数据绑定(WPF,Silverlight,Windows Form和Web Form)      对象状态追踪(对象是否为新增、修改、标记为删除,等等。)    标准化业务和验证规则处理 在对象和属性层级的标准化授权 整合及简化,标准的.NET身份验证模型  撤销(Undo)功能,用来支持实作取消按钮,和复杂分层的用户接口(UI)     标准化集成与数据存取层或ORM 加强对于业务对象的LINQ查询支持 许多的一般生产力(productivity)功能,可用于很多的企业应用程序方案中 异步数据存取,和异步验证规则   支持的平台有:Microsoft .NET 1.x through 4.5.1Windows Runtime (WinRT for Windows 8.1)Windows Runtime (WinRT for Windows Phone 8.1)Windows Phone 8 (Silverlight)Silverlight 5Android (using the Xamarin tools)iOS (using the Xamarin tools)Linux and OSX (using mono) 标签:.net开发框架
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值