我需要使用nettiers类库创建一个控制台应用程序。我创建了一个新的控制台应用程序项目,添加了对来自NetTiers的所有库的引用,并创建了一个包含所有必要配置的app.config文件。当我编写代码时,我得到了智能感知,没有错误,但当我去编译应用程序时,我得到了一个错误,PPGEDI.Data不存在。
我在program.cs Main方法中只有一行代码:
PPGEDI.Entities.VansEntity van
= DataRepository.VansEntityProvider.GetById(16);我得到以下错误:
Error 93
The type or namespace name 'Data'
does not exist in the namespace 'PPGEDI'
(are you missing an assembly reference?) 这很令人沮丧,因为我知道我已经添加了程序集引用:

我使用的是带有C#和.NET 4.0的Visual Studio2010。有没有人能告诉我,我需要做些什么才能让它工作。
需要注意的是,如果我在nettiers生成的web应用程序的ASPX页面上的方法中使用相同的语句,则可以使用相同的语句。
发布于 2011-08-18 04:21:10
@BrokenGlass,你完全正确。我仔细检查了一下,它被设置为".NET框架客户端配置文件“,我将其更改为.NET 4,现在它可以工作了,你能把它作为答案吗?
您在控制台应用程序中使用的是.NET客户端配置文件,它是一个不包含所有程序集的“精简”版本。
问题是,当您的应用程序添加了对面向完整框架的类库的引用时,对“完整”框架程序集的引用将无法解析。这将导致您所看到的相当不会出现的错误消息。切换到完整的.NET 4作为目标框架将解决这个问题。
有关该问题的更深入概述和.NET 4客户机配置文件的一般信息,请参阅"What’s new in .NET Framework 4 Client Profile RTM"
https://stackoverflow.com/questions/7098451
复制相似问题