У меня есть имя класса под названием «Адрес» в двух пространствах имен. Его были два файла EDMX, поэтому он имеет другое пространство имен на стороне клиента. У меня есть еще один класс «Продавец» и он содержит объект класса «Адрес». В одной ситуации мне нужно преобразовать из одного пространства имен в другое пространство имен. Как я могу это достичь.Casting Namespace
ответ
Вы не отливать пространств имен, вы типов Разрешая по квалификаций их с именами.
Вообще это плохая идея иметь несколько классов с тем же именем, особенно , если они используются вместе где-нибудь в приложении.
Невозможно автоматически. Пространство имен - это просто префикс имени класса. По сути, это совершенно разные классы, в которых нет ничего общего.
Если только один класс адресов не был получен из другого, вы не можете отличить их между собой. Что вы можете сделать, это дать классам своего рода «конструктор преобразования», который принимает объект соответствующего другого класса и отображает поля для своих собственных из них:
namespace NS1
{
public class Address
{
// fields go here
public Address(NS2.Address add2)
{
this.Name = add2.Name;
this.Street = add2.Street;
// etc.
}
}
}
Кастинг имен концептуально неверно. Уместнее сказать, кастинг от одного типа к другому. Если два класса не связаны с наследованием, вы не можете использовать кастинг вообще.
- 1. Tweaked Casting vs. Casting Math.Floor
- 2. Casting XML унаследованного класса
- 3. ksoap2 casting getResponse()
- 4. Как реализовать слепков Утилиты Namespace
- 5. Casting объекты
- 6. Casting Shadows
- 7. JodaTime casting
- 8. Generic Casting
- 9. Casting arrayList
- 10. Десятичный Casting
- 11. Casting Generic
- 12. JsDoc Namespace
- 13. Undeeclared namespace
- 14. namescript namespace
- 15. ASP.NET Namespace
- 16. jQuery.data() namespace
- 17. ViewModel NameSpace
- 18. App.configuration namespace
- 19. Redis namespace
- 20. Casting между несвязанными конгруэнтными классами
- 21. Eigen C++ casting
- 22. casting object using name
- 23. calloc c-style pointer casting to C++ casting style
- 24. C# object runtime type casting
- 25. MongoDB Linq exception casting exception
- 26. В чем разница между написанием «:: namespace :: identifier» и «namespace :: identifier»?
- 27. вызов namespace-uri в C#, namespace-uri имеет недопустимый токен
- 28. В чем преимущество использования :: namespace :: something over namespace :: something?
- 29. Casting Байт ошибки Байт
- 30. Java Casting Problem
Вы не * набрасываете * пространства имен, вы разрешаете типы, определяя их с помощью пространства имен. – codymanix
Да, я знаю, что это ошибка дизайна, и все убытки уже сделаны. На данный момент невозможно изменить. У этого также есть много других экземпляров класса. Поэтому назначение каждого имущества само по себе является болезненной работой. – Mohanavel