7

Pracuję nad interfejsem API i korzystam z interfejsu ASP.NET Web API, aby go odsłonić. Próbowałem dodać odwołanie do usługi do usługi potoków nazwanych, która jest odpowiedzialna za uwierzytelnianie i autoryzację, ale nie mogłem odwoływać się do niej w moim kodzie.Odwołania nazwanych potoków nie działa z ASP.NET MVC 4

Usługa nazwanego przewodu działa prawidłowo i jest używana w wielu różnych projektach. To jest pierwsza próba użycia go z ASP.NET MVC 4. Działa bardzo dobrze na innym projekcie, który używa ASP.NET MVC 3.

Jak widać na poniższym obrazie, jestem w stanie dodaj odwołanie do usługi. Ale nie pojawiło się ono w przeglądarce obiektów lub autouzupełnieniu!

Service References

Kiedy próbuję powołać się na tę usługę, to po prostu nie pojawiają się wszędzie.

Code

Wydaje się być problem z ASP.NET MVC 4 projektów i nazwane referencje usług Pipes.

Naprawdę nie wiem, czy to dobrze znane/udokumentowane zachowanie, ale nie byłem w stanie znaleźć niczego przydatnego związanego z tym pytaniem w Internecie.

Mogę dodać odniesienie do tej usługi za pomocą Visual Studio 2012 na każdym rodzaju projektu, z wyjątkiem ASP.NET MVC 4. Problem jest szczególnie związany z projektami ASP.NET MVC 4.

Próbowałem dodać odwołanie za pomocą Visual Studio 2010 i miałem ten sam problem: działa całkiem dobrze z ASP.NET MVC 3 i każdym innym rodzajem projektu. Ponownie, problem jest szczególnie związany z projektami ASP.NET MVC 4.

Czy ktoś ma ten sam problem? Jak mogłem przez to przejść?

Odpowiedz

2

Ponieważ wygląda na błąd Visual Studio/ASP.NET MVC, właśnie znalazłem obejście tego problemu.

Właśnie stwierdziłem, że mogę użyć narzędzia wiersza poleceń svcutil w celu wygenerowania kodu dla klienta usług i struktur danych. Oto składnia polecenia:

> svcutil net.pipe://my_sevice/mex /namespace:"*, MyNamespace" 

generowany następujące pliki:

  • SecurityService.cs
  • output.config

Wtedy właśnie importowane wygenerowany SecurityService. cs do mojego bieżącego projektu i dokonałem scalenia konfiguracji bindowania dostępnych na wygenerowanym pliku output.config z moim własnym plikiem web.config.

Powiązane problemy