【问题标题】:Simple Enterprise Library console application refuses to compile简单企业库控制台应用程序拒绝编译
【发布时间】:2011-02-14 15:35:41
【问题描述】:

我刚刚下载并安装了Microsoft Enterprise Library 5.0。我启动了 VS 2010 来使用 EL 5 并创建了一个非常简单的控制台应用程序。但是,它不会编译。我收到以下错误:

命名空间中不存在类型或命名空间名称“数据” 'Microsoft.Practices.EnterpriseLibrary' (您是否缺少装配 参考?)

我添加了 Microsoft.Practices.EnterpriseLibrary.Common、Microsoft.Practices.EnterpriseLibrary.DataMicrosoft.Practices.Unity 对我的项目的引用。

这是拒绝编译的简单代码。

using Microsoft.Practices.EnterpriseLibrary.Common.Configuration.Unity;
using Microsoft.Practices.EnterpriseLibrary.Data;
using Microsoft.Practices.Unity;

namespace EntLib
{
    class Program
    {
        static void Main(string[] args)
        {
            IUnityContainer container = new UnityContainer();
            container.AddNewExtension<EnterpriseLibraryCoreExtension>();
            var defaultDatabase = container.Resolve<Database>();
        }
    }
}

上面的错误抱怨第 2 行:

using Microsoft.Practices.EnterpriseLibrary.Data;

可能有人会指出我的一个愚蠢的错误,但目前我没有看到它。

我尝试删除 Microsoft.Practices.EnterpriseLibrary.Data 并将其再次添加到引用中,但没有帮助。

【问题讨论】:

    标签: c# .net enterprise-library enterprise-library-5


    【解决方案1】:

    我在this question 找到了答案。我将项目中的目标框架从 .NET Framework Client Profile 更改为 .NET Framework 4。

    【讨论】:

      【解决方案2】:

      我怀疑您的目标是 .NET 客户端配置文件。使用 EntLib 5.0 的 Microsoft.Practices.EnterpriseLibrary.Data 程序集时,您需要以完整的 .NET 框架为目标。右键单击您的项目,选择 Properties,然后在 Applciation 选项卡中,选择 .NET Framework 3.5 或 .NET Framework 4.0 作为 Target Framework 属性的值。这是 EntLib 5.0 中的一个已知问题

      【讨论】:

        猜你喜欢
        • 2023-03-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-14
        • 2014-01-21
        • 1970-01-01
        • 1970-01-01
        • 2012-01-26
        相关资源
        最近更新 更多