2014-02-03 2 views
0

Я получаю сообщение об ошибке при добавлении [Queryable] ошибка похожа, как это «System.Linq.Queryable» не является классом атрибутаSystem.Linq.Queryable не является ошибкой класса атрибута?

, когда я пытался добавить пространство имен ранее [System.Web.Http.Queryable] Я получил другую ошибку

Тип System.Web.Http.QueryableAttribute существует как System.Web.Http.OData.dll и System.Web.Http.dll

Как решить эту проблему ?

+0

Попробуйте написать с их полными именами .. –

ответ

0

У вас есть две ссылки на DLL, которые содержат точно такое же пространство имен, содержащее класс с точно таким же именем. Самое простое решение - удалить одну из этих ссылок из вашего проекта. Если вам нужны они оба по другим причинам, то единственным решением, о котором я могу думать, является создание другого проекта, который будет обертывать классы, которые вам нужны, в других классах в другом пространстве имен.

1

Как сказал Сонер Гёнюль. Скорее всего, у вас есть два с помощью директивы в файле CS:

using System.Web; 
using System.Web.Http; 

как определяют атрибут. Либо удалите одну из этих пространств имен или полностью определить свой атрибут либо как

[System.Web.Queryable] 
// or 
[System.Web.Http.Queryable] 

В зависимости, что разница в обоих, и то, что вам нужно. Вы найдете дополнительную информацию в соответствующей документации MSDN для обоих.

Смежные вопросы