我搜索谷歌这个,无法找到问题的解决方案.
我的网站引用了引用企业库数据访问组件的DAL(自定义DLL).
我已经添加了企业库NuGet Package Manager,当我尝试构建网站时,会弹出以下编译错误:
错误44无法加载文件或程序集"Microsoft.Practices.EnterpriseLibrary.Common"或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配
我已经尝试Copy Local = True在DAL中设置Enterprise Library dlls并且dll被转移到网站的Bin目录中DAL dll,但仍然会弹出错误.
任何人都可以指导我这....
我目前在我的应用程序中使用SQL Azure和Entity SQL.
例如
Entities model = new Entities();
db_Item item = model.db_Item.First();
Run Code Online (Sandbox Code Playgroud)
现在我想在企业库中使用瞬态故障处理,但是没有我能找到的示例或解决方案可以让我做一些事情,比如覆盖Entities类,所以我不必更新数百个代码的地方.
有人可以提供更多关于如何做到这一点的信息吗?
我一直在学习IoC,依赖注入等,并享受这个过程.对我来说,解耦和编程接口的好处是不费吹灰之力的.
但是,我真的不喜欢将自己绑定到像Unity或Autofac或Windsor这样的特定框架 - 因为我还在学习并且尚未确定哪个最适合我的目的.
那么,我怎么能把像Unity这样的东西包裹起来,这样我以后就可以轻松换掉温莎呢?(管他呢).并且你不敢说用另一个注入第一个;)
谢谢!
R.
Ps我标记Unity,因为这是我目前的个人偏好(我只是在使用Entlib).
c# enterprise-library dependency-injection inversion-of-control unity-container
使用Enterprise Library 6.0时,以下代码中会出现此错误:
bool rethrow = ExceptionPolicy.HandleException(ex, "ReplacePolicy1")
Run Code Online (Sandbox Code Playgroud)
"必须使用SetExceptionManager方法在ExceptionPolicy类中设置ExceptionManager."
在Enterprise Library 5.0中,此代码有效:
public static bool HandleException(Exception exception, string PolicyName)
{
ExceptionManager exManager = EnterpriseLibraryContainer.Current.GetInstance<ExceptionManager>();
ExceptionPolicy.SetExceptionManager(exManager);
bool rethrow = ExceptionPolicy.HandleException(ex, "ReplacePolicy1");
return reThrow;
}
Run Code Online (Sandbox Code Playgroud)
但是在Enterprise Library 6.0中找不到EnterpriseLibraryContainer类.我想要获取ExceptionManager的实例.我该如何解决这个问题?
它似乎没有,我们计划在未来的项目中使用它(Logging,Exception等..).它仍然受支持吗?我没有像过去那样看到围绕这个工具的很多活动.
我们已经有了新的遗物,所以也有助于知道新的遗物是否可以进行日志记录/异常处理..例如,我可以创建自定义日志或异常并在新的遗留仪表板中查看它们吗?
我一直想知道是否可以让Fluent-NHibernate与已经存在的存储过程进行通信,并将结果集中的映射分配给我自己的域对象.
也是Fluent-NHibernate能够直接执行没有返回结果集的程序吗?
基本上我一直在考虑使用Fluent-NHibernate用一个域驱动设计替换一个带日期的TypedDataSet模型的含义,该设计可以从DAL返回简单对象.如果Fluent-NHibernate不能轻松使用SP,我想我最喜欢的是一个组合DAL,它将利用FNH进行简单的CRUD操作,同时让复杂的程序由Enterprise Library管理.虽然我不认为如果FNH不能很好地与SP一起使用,那么拥有2个竞争DAL是不理想的,我喜欢听到任何其他想法,而不是同时使用EntLib和FNH.
c# nhibernate stored-procedures enterprise-library fluent-nhibernate
我在尝试从Enterprise Library 5.0运行DAAB时遇到了一些问题.我按照教程按照步骤操作,但是收到错误...
1)下载/安装企业库
2)添加对我需要的块的引用(common/data)
3)进口
Imports Microsoft.Practices.EnterpriseLibrary.Common
Imports Microsoft.Practices.EnterpriseLibrary.Data
Run Code Online (Sandbox Code Playgroud)
4)通过企业库配置软件.我从我的网站打开web.config.然后我单击块,然后单击添加数据设置...填写我的详细信息并保存/关闭
5)然后我(思考设置完成)尝试通过获取数据库的实例
Dim db As Database = DatabaseFactory.CreateDatabase()
Run Code Online (Sandbox Code Playgroud)
6)我编译并收到以下错误:
无法加载文件或程序集"Microsoft.Practices.EnterpriseLibrary.Data,Version = 5.0.414.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其中一个依赖项.定位的程序集的清单定义与程序集引用不匹配.(来自HRESULT的异常:0x80131040)(C:\ site\web.config第4行)
我的web.config的第4行是由配置工具生成的,它是:
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
Run Code Online (Sandbox Code Playgroud)
我错过了必要的步骤吗?我是否按错误的顺序完成了这些步骤?我弄错了吗?
非常感谢你的帮助.
enterprise-library web-config data-access-layer daab enterprise-library-5
我希望能够在每个catch块中进行登录.像这样的东西.
catch (Exception exception)
{
Logger.Write(exception);
}
Run Code Online (Sandbox Code Playgroud)
然后配置中的设置将使用客户监听器获取Message和StackTrace属性等.
我想使用Enterprise Library Logging Application Block.我敢肯定有人必须已经这样做了.
接口(在名为"Interfaces"的程序集中.在项目中: - 接口)
namespace Interfaces
{
public interface IDoSomeWork1
{
string DoSomeWork1();
}
}
namespace Interfaces
{
public interface IDoSomeWork2
{
string DoSomeWork2();
}
}
Run Code Online (Sandbox Code Playgroud)
依赖关系(在名为"实体"的程序集中.在项目中: - 实体)
namespace Entities
{
public class ClassB : IDoSomeWork1
{
public string DoSomeWork1()
{
return this.ToString();
}
}
}
namespace Entities
{
public class ClassC : IDoSomeWork2
{
public string DoSomeWork2()
{
return this.ToString();
}
}
}
Run Code Online (Sandbox Code Playgroud)
类(在项目中: - UsingUnity)
public class ClassA
{
[Dependency]
public IDoSomeWork1 DoSomeWork1 { get; set; }
[Dependency] …Run Code Online (Sandbox Code Playgroud) 是否有Azman的替代品,这是一种应用安全性的新方法.以前我们使用EntLib 3并使用Azman进行安全和授权.但是,我读到的有关EntLib 6.0愿景的文章是弃用安全性(下面的链接),但没有指定替代方案.请问有人请告知现在处理安全和授权的最佳方法是什么?