re: 解决方案、项目、程序集、命名空间 Joanna 2008-10-11 17:56
您好,我似乎整天在为着整样划分程序集而烦恼!
你这里提到的"怎样划分程序集也是大有文章的"是怎样的呢?期待能够写写这方面的内容...
petshop4中是按层如BLL,DAL,IBLL,IDAL这样来划分的,各层个下面再包括了功能模如ItemDAL、ProductDAL....如果项目包含的内容比较多时,感觉BLL和DLL比较臃肿....
如果按功能模块划分比如先分成Item和Product。。然后这下机g再分BLL,DAL这些东西...可样子似乎又太细了...
在马丁写的那本设计模式与原理上说,接口与客户端的关系比实现层的关系更紧密。。这句话我是不是可以理解为接口与实现层在划分程序集时应当分开?可是分开以后,在客户端引用程序集时得先引接口dll,再引用实现层dll。。如果功能项一多,那个烦啊真是痛苦!可将所有都放在一起,引用倒是简单了,可是似乎总是一点变化,都要重要编译整个dll。从这个层面讲我又总希望可以将dll文档分的细一点....
是不是我走了误区,还是问题本来这样,是我大惊小怪?
期望可以得到您的回复!并谢谢了.
re: .Net平台AOP技术研究 meetcomet 2008-10-07 04:05
谢谢,终于基本明白了。
re: PetShop之业务逻辑层设计 2:22 2008-10-07 02:27
我觉得对每个访问者的及时回答应该加强,如果交流是目的的话。Anytao那人的博客不错,有问必答,而且很及时。再怎么说,还是辛苦博主了,不过我认为你的辛苦也是有你的出发点的,至少是或多或少吧。
re: LINQ to SQL公共基类 Doho 2008-09-29 16:24
我看了里面的源码,跟Castle ActiveRecord的实现方式类似,用一个共同的基类实现CRUD操作,方法参数一般为映射实体。
复杂的业务需求还是要手动编写,比如规则验证。
re: LINQ to SQL公共基类 jisen007 2008-09-26 16:44
谢谢
re: LINQ to SQL公共基类 jisen007 2008-09-26 16:43
good idea!麻烦发一份demo,你给的连接下的是logon.aspx!jisen008@hotmail.com
re: LINQ to SQL公共基类 mmkk 2008-09-26 16:30
好文, 提到了LTS在disconnected模式下会碰到的一些常见问题, Detach方式我第一次在Dropthings当中见过, 并且尝试使用, 奇怪的是在有些情况无法工作, 时间有点久远, 现在也一时想不起来是什么情况了, 不过肯定是跟Association有关的. 后面使用Action<T>作为参数传入的方式正是我在现有项目当中使用的做法. 其还有一个好处更新过程更加透明, 后端的更新方法非常稳定, 不需要为更新字段的变化而变化.
re: LINQ to SQL公共基类 Gray Zhang 2008-09-26 15:17
@江南白衣
别这么说,linq to sql能用POCO,ef行么,changetracking, statemanager等等都是不能序列化的,Ef也仅仅能序列化entitykey而已,要求继承或实现一大堆接口的实体类很难想像怎么去和其他语言的系统交互
re: LINQ to SQL公共基类 江南白衣 2008-09-26 14:49
如果做分布式,用ef更好一些.LINQ TO SQL对分布式的支持是先天不足的
re: 封装变化(二) Flicker 2008-09-26 10:30
好文章
re: Buider模式应用实践 Flicker 2008-09-26 10:16
学习了啊。。。
re: 设计之道 Slash 2008-09-25 15:01
专门登录下上来感激LZ
正在学习设计模式,辛苦LZ
re: PetShop的系统架构设计 ffxing 2008-09-25 11:07
大家都去学习.net 3.0了,我还在学习.net 2.0,不过这篇文章不错,帮我大忙
re: WCF基础知识问与答 sharezoon 2008-09-24 09:45
您好。我在看您译的《WCF服务编程》这本书,在第一章地址那里,您写道“wcf的每一个服务都有一个唯一的地址(address)”。在终结点那里,”一个单独的服务公开了多个终结点,前提是URI互不相同。“这里自然每个终结点的地址不同,就不是唯一的地址了。我是这样理解地址不同的:1.协议不同,地址不同。2.端口不同,地址不同。另外我可能将地址和URI混了。
re: PetShop的系统架构设计 EricYang 2008-09-23 19:41
真棒!
re: 中国最美丽的MVP 愚斋居士 2008-09-21 07:09
不错哦
re: Command模式应用实践 Confach 2008-09-18 15:26
今天再看这篇文章,觉得wayfarer思路清晰,言简意赅。学习
找不到类型或命名空间名称“TransactionScope”(是否缺少 using 指令或程序集引用?)
请问这个是怎么回事的呀?
错了,应该是 ImplicitConstructor 添加静态构造函数
static ImplicitConstructor(){}
实验后发现,如果给 ExplicitConstructor 添加一个静态构造函数
static ExplicitConstructor(){}
之后,两者的运行时间就没什么差别,所以有点怀疑是否跟这个有关
我运行的两个测试结果:
31040249
30911803
re: WCF基础知识问与答 queen0452 2008-09-11 10:28
支持
如何在拦截的时候进行对方法的中断呢 小郑 2008-09-11 09:34
你好,用了你的框架后,感觉不错,现在碰到一个问题,
就是如何对调用的方法进行中断,(不要用异常)
re: 关于水晶报表二次开发的几个问题 Negolarsx 2008-09-10 11:10
我也是耶!照著樓主說的去做,CrystalReport11.SetDataSource(dataset.Tables("TRAX")) 後沒有任何的錯誤訊息,卻跟樓樓上一樣沒辦法將dataset中的資料顯示到CrystalReportViewer上,是少做了什麼步驟嗎?請各位高手指教...謝謝
" 某些控件是不需要接受用户的操作或只需要接受一次操作的时候,我们可以将这些控件的EnableViewState属性改为false "
这个怎么区分呢? 什么控件会接受一次呢?
textbox 好像相应的。
re: 新浪短信Web Service 小猫 2008-09-03 11:54
现在好像找不到注册的地方了.
re: 泛型的一点遗憾 赤脚江湖 2008-09-02 13:43
LZ 日志应该独立出来才是,抽象一下,把消息设置进去
re: 泛型的一点遗憾 Angel Lucifer 2008-09-02 13:02
@怪怪
有什么遗憾,望指教一二。
PS: 我倒觉得 .NET 提供的泛型因地制宜。如果要跟 C++ 的模板技术对比,当然优缺点无数,但这比较本身就不公平。
re: 泛型的一点遗憾 怪怪 2008-09-02 04:42
要说泛型的遗憾那可太多了...
re: 泛型的一点遗憾 木野狐(Neil Chen) 2008-09-01 21:18
如果允许在约束里就地定义一堆方法签名,这个其实就可以用接口来组织了. 不过构造器的情况确实有点例外。
re: 泛型的一点遗憾 曲滨*銘龘鶽 2008-09-01 21:07
大致看了看感觉楼主的封装是没啥意义的
ThrowHelper.ThrowEmployeeException
比
throw new EmployeeException
还要长何苦那,看看 .net 源码没有封装这东西的;
异常类没必要封装到专门的函数类里去调用
这样堆栈什么的都乱套了;而且调试的时候,VS 会把断点定到你封装的函数内的 throw 那行、很郁闷的说;每次还要跳过你的函数才能;调试代码;
个人认为,异常是不适合封装到,一个公用的地方实例化并抛出的;
如果单纯是为了找个地方统一写日志,这种做法就有些不必要了;
桌面应用、网站应用 都有地方统一截获异常;在写日志就可以了;
封装在这种情况下反倒不适合的感觉
纯属个人意见;不同意可以无视!
re: 泛型的一点遗憾 木野狐(Neil Chen) 2008-09-01 20:39
观察一下这个范型方法
static void Test<T>(T foo) where T: Foo, IA, IB, new()
它生成的签名是:
.method private hidebysig static void Test<.ctor (ConsoleApplication5.Foo, ConsoleApplication5.IA, ConsoleApplication5.IB) T>(!!T foo) cil managed
其中构造器约束 new() 被翻译成了 .ctor ,仅仅是一个简单的标志.
可以想见如果允许根据不同的参数类型定义约束,这里会变得非常冗长,而且不是一两句话能解决的事情了。
就问题本身而言我觉得可以在构造 exception 对象后给 InnerException 属性赋值来解决。
re: 泛型的一点遗憾 Justin 2008-09-01 20:21
只有想不到,没有做不到,未来肯定能支持的
re: 泛型的一点遗憾 Artech 2008-09-01 17:58
ApplicationException obsolete?
re: 泛型的一点遗憾 布尔 2008-09-01 17:52
@Anders Liu
既然可以把异常抽象出来,就可以用IOC来做了
re: 泛型的一点遗憾 Anders Liu 2008-09-01 17:34
为什么不用工厂去生产异常对象,偏偏要自己new呢?
re: 泛型的一点遗憾 xiao_p 2008-09-01 17:34
恩 使用泛型方法就可以了
不过 lz的问题 也确实很叫人郁闷。。。
re: 泛型的一点遗憾 kuku 2008-09-01 17:29
也不一定非要使用构造函数来把 MESSAGE 参数传进去
使用反射多少有点性能的影响
可能先 NEW 一个 Execption 然后设置 message 属性
re: 泛型的一点遗憾 布尔 2008-09-01 17:27
还有这里用范型方法比范型类更加恰当。
re: 泛型的一点遗憾 布尔 2008-09-01 17:26
约束加到方法上会比较好。
re: 泛型的一点遗憾 谦虚的天下 2008-09-01 17:22
学习拉
re: 泛型的一点遗憾 狼Robot 2008-09-01 17:15
学习
re: WCF中的Stream操作 横刀天笑 2008-08-28 12:47
这个maxReceivedMessageSize="9223372036854775807"是不是有误?
re: 新浪短信Web Service zylbmm 2008-08-26 16:30
到底可不可以注册呀
re: Remoting疑惑续集之再续 澹台金虎 2008-08-26 16:01
请把这个代码给我发一份吧。呵呵。谢谢
我是一个在校的学生。
我现在在做的事情是把 SimpleDB从Java版本移植为C#版本的,在把Java RMI 转移到.Net Remoting的时候遇上了问题,实际就是利用.Net Remoting完成一个类似于JDBC的功能。
之前看您写的文档,收获很多,但是还是有写麻烦,感觉整体架构上都不是很明确...现在想写,却不知道怎么下手,写了几个简单的东西,却不能完成想要的功能,好痛苦的额...
希望您能给我些关于远程对象的复杂处理问题的文档。
先谢谢您了,耽误您些,不好意思。
re: 策略模式的应用实践 无恙 2008-08-21 23:14
我觉得这个接口
public interface ICdrConvert
{
ICdrRecord Convert(string record);
ICdrRecord Convert(ICdrRecord record);
}
里面的两个方法为什么不合并一下?
不觉得有太大的必要区分开来,直接一个ICdrRecord Convert(string record)就可以了,
这样也不会有后面这段_convert.Convert(_convert.Convert(line))让人觉得有点奇怪的代码。
请问,附件在哪里?
可以发一份Demo给我吗?viveywang@yeah.net
re: AOP技术基础 starmoon 2008-08-07 15:32
文章不错,易懂,很庆幸我找到了你这篇文章。