Rozwiązywanie problemów z odwołaniami usługi

W tym temacie opisano typowe problemy, które mogą wystąpić podczas pracy z Windows Communication Foundation (WCF) lub Usługi danych WCF odwołuje się do w Visual Studio.

Błąd zwraca dane z usługi

Kiedy powrócisz DataSet lub DataTable z usługi, może zostać wyświetlony wyjątek "został przekroczony przydział maksymalny rozmiar dla wiadomości przychodzących".Domyślnie MaxReceivedMessageSize właściwość niektóre powiązania jest ustawiona na stosunkowo niewielką wartość ograniczenie narażenia na ataki typu odmowa usługi.Można zwiększyć tę wartość, aby zapobiec wyjątek.Aby uzyskać więcej informacji, zobacz MaxReceivedMessageSize.

Aby naprawić ten błąd:

  1. W Solution Explorer, kliknij dwukrotnie plik app.config, aby go otworzyć.

  2. Zlokalizuj MaxReceivedMessageSize właściwości i zmień ją na większą wartość.

Nie można odnaleźć usługi w swoje rozwiązanie

Po kliknięciu przycisku Discover przycisku w Dodać odwołania usługi okno dialogowe jednego lub więcej projektów Biblioteka usług WCF w roztworze nie będą wyświetlane na liście usług.Może to występować, jeśli biblioteka usługi został dodany do roztworu, ale nie została jeszcze skompilowana.

Aby naprawić ten błąd:

  • W Solution Explorer, kliknij prawym przyciskiem myszy projekt Biblioteka usług WCF i kliknij przycisk budować.

Błąd dostępu do usługi za pośrednictwem pulpitu zdalnego

Gdy użytkownik uzyskuje dostęp do usługi WCF obsługiwane w sieci Web za pośrednictwem połączenia pulpitu zdalnego i użytkownik nie ma uprawnień administracyjnych, jest używane uwierzytelnianie NTLM.Jeśli użytkownik nie ma uprawnień administracyjnych, użytkownik może zostać wyświetlony następujący komunikat o błędzie: "żądanie HTTP jest autoryzowane na podstawie schematu uwierzytelniania klienta"Anonimowy".Nagłówek uwierzytelnienia otrzymany z serwera został "NTLM"."

Aby naprawić ten błąd:

  1. W projekcie witryny sieci Web otwórz Właściwości stron.

  2. Na Opcje Start kartę, a następnie kliknij polecenie Wyczyść Uwierzytelniania NTLM pole wyboru.

    [!UWAGA]

    Należy wyłączyć uwierzytelnianie NTLM, tylko dla witryn sieci Web, które zawierają wyłącznie usług WCF.Zabezpieczenia usług WCF jest zarządzany przy użyciu konfiguracji w pliku web.config.Uwierzytelnianie NTLM dzięki temu niepotrzebne.

Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z wyjątkami: System.ServiceModel.Security.MessageSecurityException.

Poziom dostępu dla klas generowanych ustawienie nie ma znaczenia

Ustawienie poziom dostępu dla klas generowanych opcji w Odwołania do konfigurowania usługi okno dialogowe, aby wewnętrzny lub przyjaciel nie może działać zawsze.Mimo że opcja wydaje się być ustawione w oknie dialogowym, wynikowy klasy wsparcie zostanie wygenerowany z poziomem dostępu Public.

Jest to znane ograniczenie niektórych typów, takich jak szeregowane za pomocą XmlSerializer.

Błąd debugowania usługi kodu

Podczas kroku do kodu dla usługi WCF z kodu klienta może pojawić się błąd dotyczący Brak symboli.Taka sytuacja może wystąpić, gdy usługa, która była częścią rozwiązania został przeniesiony lub usunięty z roztworu.

Po dodaniu odwołania do usługi WCF, który jest częścią bieżącego rozwiązania między projektami usługi i projektu klienta usługi dodaje się zależność kompilacji explicit.Gwarantuje to, że klient uzyskuje dostęp zawsze do usługi aktualne pliki binarne, które jest szczególnie ważne w przypadku debugowania scenariusze, takie jak stepping z kodu klienta do usługi kodu.

Jeśli projekt usługi jest usuwany z roztworu, ta zależność kompilacji explicit zostaje unieważniony.Visual Studio można już zagwarantować, że odbudowaniu projektu usługi w razie potrzeby.

Aby naprawić ten błąd, należy ręcznie przebudować projektu usługi:

  1. Na Narzędzia menu, kliknij przycisk Opcje.

  2. W Opcje okno dialogowe rozwiń projektów i roztwory, a następnie wybierz Ogólne.

  3. Upewnij się, że Pokaż zaawansowane konfiguracje build pole wyboru jest zaznaczone, a następnie kliknij przycisk OK.

  4. Ładowanie projektu usługi WCF.Aby uzyskać więcej informacji, zobacz Porady: tworzenie rozwiązań dotyczących wielu projektów.

  5. W Menedżer konfiguracji okno dialogowe, set konfiguracji rozwiązania Active do debugowania.Aby uzyskać więcej informacji, zobacz Porady: tworzenie i edycja konfiguracji.

  6. W Solution Explorer, wybierz projekt usług WCF.

  7. Na budować menu, kliknij przycisk odbudować odbudować projektu usługi WCF.

Usługi WCF w danych nie są wyświetlane w przeglądarce

Podczas próby wyświetlenia danych w reprezentacji XML Usługa danych programu WCF, program Internet Explorer może błędnie interpretuje dane jako źródło danych RSS.Należy upewnić się, że opcja wyświetlania źródła danych RSS jest wyłączona.

Aby naprawić ten błąd, należy wyłączyć źródła danych RSS:

  1. W programie Internet Explorer na Narzędzia menu, kliknij przycisk Opcje internetowe.

  2. Na zawartości kartę w źródła sekcji, kliknij Ustawienia.

  3. W Paszy ustawienia okno dialogowe, wyczyść Włącz widok do odczytywania paszy pole wyboru, a następnie kliknij przycisk OK.

  4. Kliknij przycisk OK zamknąć Opcje internetowe okno dialogowe.

Zobacz też

Koncepcje

Usługi Windows Communication Foundation i usługi danych WCF w programie Visual Studio

Inne zasoby

Consuming ASMX and WCF Services Sample