在构建时缺少指令或程序集
本文关键字:指令 程序集 构建 | 更新日期: 2023-09-27 18:13:35
我正在构建一个涉及多个项目的解决方案。我用几种用法添加了对它们的引用,并且VS在编写过程中没有标记任何问题,但是当我构建时,我得到这个错误:
Error 3 The type or namespace name 'OrderRules' could not be found (are you missing a using directive or an assembly reference?)
这是发生错误的类之一:
using OrderRules.Interface;
namespace OrderRule.Quantity
{
public class MaxStarshipRule : OrderRules.Interface.IOrderRule
{
public OrderRules.Interface.OrderRuleResult CheckRule(OrderTaker.SharedObjects.Order order)
{
var passed = true;
var message = string.Empty;
foreach (var item in order.OrderItems)
{
if (item.ProductItem.ProductName == "Starship" && item.Quantity > 1)
{
passed = false;
message = "Maximum of 1 starship per order";
}
}
return new OrderRuleResult(passed, message);
}
public string RuleName
{
get { return "Maximum Starship Rule"; }
}
}
}
在我看来很正常,你能看到什么吗?
如果:
- 你添加了所有必需的项目参考
- 您添加了所有必需的
using XXX
- Visual Studio允许您编写类型/名称空间而不告诉您它不存在(语法高亮显示是OK的)
- 它只在你编译你的项目时失败
然后检查您的所有项目都针对同一平台(或者至少目标平台是兼容的)。例如,不要从以。net 4.0为目标的程序集(客户端配置文件)引用以。net 4.0为目标的程序集(完整)。