小编Joe*_*eau的帖子

在同一解决方案中引用2个不同版本的log4net

我正在使用引用log4net 1.2.10.0的NHibernate 2.1.2.400.在同一个项目中,我也使用简单的会计SDK,遗憾的是它仍然使用log4net 1.2.9.0.

所以我可以让NHibernate工作,如果我引用log4net 1.2.10.0但是simpleSDK不起作用.反之亦然......

我猜大多数问题都来自于log4net已经改变了它的汇编密钥.我尝试使用绑定重定向但没有成功:2个DLL没有相同的密钥.

我正在考虑重新编译NHibernate以使用log4net 1.2.9.0,但这似乎是错误的做法,我的感觉是Simply Accounting不会更新他们的SDK以便很快使用log4net 1.2.10.0.

处理这个问题的最佳方法是什么?是否有可能解决?

.net nhibernate dll log4net

77
推荐指数
2
解决办法
3万
查看次数

在封闭源商业软件中使用GPL或LGPL许可的图标?

如果在封闭源软件中包含GPL或LGPL许可图标,是否存在法律问题风险?

是否只是为了包含图标而迫使它成为开源?

将图标编译为资源是否重要?

如果您遵循许可证指定的归属规则,是否可以安全地使用创意常用许可图标?

icons gpl lgpl

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

如何在垂直和水平方向上定位中心/中间的图像

<div id="photo_leftPanel" style="float: left; width: 604px; position: relative;">
<img src="bla.jpg">
</div>
Run Code Online (Sandbox Code Playgroud)

如何让图像从这个盒子的中间开始?(中间垂直和水平)

html css

16
推荐指数
1
解决办法
6万
查看次数

使用yield迭代datareader可能无法关闭连接?

下面是一个示例代码,用于使用我在google搜索时在几个地方找到的yield关键字从数据库中检索数据:

public IEnumerable<object> ExecuteSelect(string commandText)
{
    using (IDbConnection connection = CreateConnection())
    {
        using (IDbCommand cmd = CreateCommand(commandText, connection))
        {
             connection.Open();
             using (IDbDataReader reader = cmd.ExecuteReader())
             {
                while(reader.Read())
                {
                    yield return reader["SomeField"];
                }
             }
             connection.Close();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我是否认为在此示例代码中,如果我们不遍历整个datareader,连接将不会被关闭?

如果我理解正确的收益,这是一个不会关闭连接的例子.

foreach(object obj in ExecuteSelect(commandText))
{
  break;
}
Run Code Online (Sandbox Code Playgroud)

对于可能不是灾难性的数据库连接,我想GC最终会将其清理干净,但是如果不是连接它会是一个更关键的资源呢?

yield .net-2.0

15
推荐指数
1
解决办法
5445
查看次数

标签 统计

.net ×1

.net-2.0 ×1

css ×1

dll ×1

gpl ×1

html ×1

icons ×1

lgpl ×1

log4net ×1

nhibernate ×1

yield ×1