#c# #namespaces
#c# #пространства имен
Вопрос:
В простом проекте я хочу ссылаться на объекты из webreference, добавленные в другую библиотеку c #.
Webreference вызывается QServices
default namespace
как указано ниже
Похоже, работает следующий код:
Taskworkflow.SI.QServices.Record[] querysResult = new Taskworkflow.SI.QServices.Record[0];
тем не менее, когда я импортирую Taskworkflow.SI
— namespace, я продолжаю получать ошибки:
using TaskWorkflow.SI;
....
QServices.Record[] querysResult = new QServices.Record[0];
Это приводит к ошибке:
The type or namespace name 'QServices' could not be found (are you missing a using directive or an assembly reference?)
Может ли кто-нибудь прояснить это для меня?
Спасибо за ваше время.
Примечание: QServices
существует только внутри TaskWorkflow.SI
. Они не встречаются в других проектах и не имеют никаких классов / пространств имен / объектов, которые имеют общее имя.
Комментарии:
1. Похоже
TaskWorkflow.SI.QServices
, это пространство имен, а не имя типа.
Ответ №1:
Я сильно подозреваю, что по какой-то причине вы получаете пространство имен QServices
, объявленное в TaskWorkflow.SI
пространстве имен. Итак, на самом деле вы хотите:
using TaskWorkflow.SI.QServices;
....
Record[] querysResult = new Record[0];
Или вы могли бы явно присвоить ему псевдоним:
using QServices = TaskWorkflow.SI.QServices;
....
QServices.Record[] querysResult = new QServices.Record[0];
Комментарии:
1. Ой, здорово! Я не знал, что есть возможность использовать псевдонимы в пространствах имен. Спасибо за это новое понимание! Это действительно очень поможет мне в будущем.