有没有办法在创建单元测试时在ASP.Net Web表单中模拟/伪造会话对象?
我目前正在将用户详细信息存储在会话变量中,该变量由我的业务逻辑访问.
在单独测试我的业务逻辑时,会话不可用.这似乎表明一个糟糕的设计(虽然我不确定).业务逻辑层是否应该首先访问会话变量?
如果是这样,那么我将如何使用假对象交换用户详细信息进行测试?
域模型和存储库可以在不同的dll中吗?
在3层架构中,我想我会将域模型放在业务层中,将存储库放在数据访问层中.
我感到困惑,因为我的理解是域模型使用存储库,而存储库应该从域模型返回对象,这将导致循环依赖.
我必须误解一个或多个上述概念.
非常感谢任何澄清,因为这一直困扰我一段时间,谢谢.
应该如何将当前用户传递给存储库类?
存储库使用的连接字符串需要当前用户的凭据.是否应该通过将用户名和密码作为构造函数参数传递来实例化每个存储库?这意味着具有存储库的每个域对象都应该知道当前用户.
在我的域模型中哪里最好保留对当前用户的引用?
在下面的函数中,我正在尝试创建一个动态元素(textArea).我正在尝试使用textArea.onclick = resize将函数(resize)绑定到文本区域; 哪个工作正常.
我想要做的是将参数传递给resize函数(生成的id或者,如果可能的话,还是textArea本身)
function addElement(elm, event) {
var textArea = document.createElement('textarea');
var id = Math.random();
textArea.setAttribute('id', id)
textArea.setAttribute('cols', 1);
textArea.setAttribute('rows', 3);
textArea.onclick = resize;
elm.appendChild(textArea);
}
Run Code Online (Sandbox Code Playgroud)
如果我说textArea.onclick = resize(id); 那就是调用函数.
我如何绑定函数,并将参数传递给它?