Tôi đang viết một ứng dụng khách để truy cập một dịch vụ web SOAP, sẽ được một bên thứ ba lưu trữ. Tôi có WSDL và XSD xác định giao diện và dữ liệu.Triển khai nhanh chóng và dễ dàng dịch vụ web WCF, được cung cấp cho wsdl?
Tôi không gặp sự cố khi tạo tham chiếu dịch vụ từ WSDL, nhưng tôi đang gặp sự cố khi xây dựng một dịch vụ web đơn giản triển khai dịch vụ web mà tôi có thể sử dụng để kiểm tra. (Dịch vụ của bên thứ ba chưa sẵn sàng, nhưng ngay cả khi nó đang chạy, tôi vẫn muốn làm thử nghiệm ban đầu của tôi đối với máy chủ thử nghiệm của riêng tôi, không chống lại máy chủ thử nghiệm của họ.)
Tôi đã duyệt xung quanh và dường như tôi có thể sử dụng svcutil để tạo giao diện cho dịch vụ:
svcutil.exe thewsdl.wsdl thexsd.xsd /language:c# /out:ITestService.cs
Điều này tạo ra tệp chứa định nghĩa giao diện dịch vụ. Nhưng giờ thì sao?
Tôi đã tìm ra cách dễ nhất để xây dựng dịch vụ tự lưu trữ, vì vậy tôi đã tạo ứng dụng bảng điều khiển mới và trong đó tôi đã triển khai một lớp bắt nguồn từ định nghĩa giao diện dịch vụ và kích hoạt nó bằng ServiceHost .
Chạy và trong khi chạy, tôi có thể tạo Tham chiếu dịch vụ trong ứng dụng khách của mình. Nhưng khi tôi cố gọi nó, từ ứng dụng khách, tôi gặp lỗi:
The provided URI scheme 'http' is invalid; expected 'https'.
Cách dễ nhất để giải quyết vấn đề này là gì? Có cách nào đơn giản để tắt xác thực và ủy quyền đơn giản và chỉ cho phép truy cập không hạn chế?
CHỈNH SỬA:
Tôi đang thêm tiền thưởng cho điều này, vì câu hỏi ban đầu dường như đã không thu hút sự chú ý.
Nhưng chúng ta hãy đi đến mấu chốt. Tôi đang cố gắng viết một khách hàng chống lại dịch vụ SOAP của khách hàng. Là một phần của sự phát triển, tôi muốn tạo ra dịch vụ WCF thử nghiệm của riêng tôi, thực hiện cùng một WSDL.
Vì vậy, tôi có tệp .wsdl đã tải xuống và tệp .xsd được liên kết và với chúng tôi muốn tạo một dịch vụ mà tôi có thể kiểm tra, với trình gỡ rối của VS2010.
Điều này không quan trọng đối với tôi liệu dịch vụ này có chạy độc lập hay trong IIS hay sản xuất ổn định. Tất cả những gì tôi muốn là một dịch vụ chấp nhận các yêu cầu mà trang web của khách hàng sẽ chấp nhận và trả lại phản hồi cho khách hàng của tôi rằng tôi cần nó để trả lại, để kiểm tra việc xử lý chúng của họ.
Làm cách nào để đến đó? Tôi đã thử thêm một WCF Dịch vụ Thư viện, và sau đó sử dụng svcutil.exe bên trong nó để thêm dịch vụ mới của tôi, nhưng nó dường như không cư trú app.config với boilerplate phía máy chủ, và nỗ lực của tôi để tái tạo lại nó thiên đường 't làm việc.
nhìn cho WCF 101 trên intertubes. Bạn cần chỉ định siêu dữ liệu cấu hình dịch vụ cơ bản. – Cheeso
Bạn sắp hoàn tất. Một nơi nào đó trong app.config của bạn, bạn xác định rằng ssl là bắt buộc. Xuất bản nó ở đây và chúng tôi sẽ giúp bạn tắt nó –