小编gfo*_*ley的帖子

循环依赖解决方案

我们当前的项目遇到了循环依赖问题.我们的业务逻辑程序集使用SharedLibrary程序集中的类和静态方法.SharedLibrary包含一大堆辅助函数,例如SQL Reader类,枚举器,全局变量,错误处理,日志记录和验证.

SharedLibrary需要访问Business对象,但Business对象需要访问SharedLibrary.旧开发人员通过复制共享库中的业务对象的功能(非常反DRY)来解决这种明显的代码味道.我花了一天时间试图阅读我解决这个问题的选择,但我已经走到了尽头.

我对架构重新设计的想法持开放态度,但这只是最后的手段.那么如何才能拥有可以访问业务对象的共享助手库,业务对象仍然可以访问共享助手库?

.net c# architecture design-patterns circular-dependency

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

静态变量以某种方式维持状态?

我正在研究一个现有的项目,由另一个程序员设置.我在理解页面之间如何维护状态方面遇到了一些麻烦.有一个类库,它有一些辅助对象.大多数情况下,这些对象仅用于静态方法,很少实例化或继承.

这是我正在测试的一个示例类.

public sealed class Application
{
    public static string Test;
}
Run Code Online (Sandbox Code Playgroud)

现在当我在页面的基类中运行类似下面的内容时,我希望结果一直是"1:2:Test"(注意"1"是空的),但是它只是这样的第一次运行.然后每次都是"1:测试2:测试".不知怎的,它维护页面之间的静态变量的状态并被刷新?

Response.Write("1:" + SharedLibrary.Application.Test);

SharedLibrary.Application.Test = "Test";

Response.Write(" 2:" + SharedLibrary.Application.Test);
Run Code Online (Sandbox Code Playgroud)

我需要创建更多这样的类,但是想要了解为什么会出现这种情况.

非常感谢

c# asp.net

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