Tôi muốn kiểm tra tính khả dụng của dịch vụ web iF của dịch vụ WCF lên hoặc xuống thông qua mã C#. Làm thế nào để đạt được điều đó?kiểm tra tính khả dụng của Dịch vụ web WCF
Trả lời
Khi bạn gọi số Client.Open
nếu nó không hoạt động, bạn nên ném một ngoại lệ mà bạn có thể bẫy.
Điều tôi thích làm là triển khai phương thức trả về boolean có tên Ping. Mã cơ bản chỉ cần return true;
để mã trả về càng nhanh càng tốt. Về phía khách hàng, tôi gọi nó và bẫy các ngoại lệ, nếu tôi nhận được bất kỳ thì tôi biết dịch vụ web đã ngừng hoạt động.
Bạn có thể mở rộng mẫu để thực hiện những việc như PingCheckDB hoặc PingCheckX có thể chạy thử nghiệm giả/mẫu để bạn bật/tắt chức năng trên máy khách dựa trên những gì có sẵn.
Bất kỳ mã mẫu nào, vui lòng. Cảm ơn –
@Alhmabra phương thức sẽ trông giống như công khai bool Ping() { trả về true; } Thực sự không phải là phương pháp thú vị nhất. –
Mở() không ném ngoại lệ khi tôi tắt mạng. – nurettin
Để xây dựng dựa trên câu trả lời trước: cách duy nhất để xác định xem dịch vụ có "khả dụng" hay không là trước tiên hãy xác định ý bạn là "có sẵn". Ví dụ, một dịch vụ phụ thuộc vào một tài nguyên bên ngoài như một cơ sở dữ liệu có thể hoàn toàn có sẵn, nhưng nếu cơ sở dữ liệu không thể được truy cập, thì dịch vụ sẽ có sẵn nhưng vô dụng.
Bạn cũng nên hỏi bạn sẽ làm gì với thông tin về tính khả dụng. Đặc biệt, điều gì sẽ xảy ra nếu bạn quyết định rằng dịch vụ là "có sẵn", khi bạn gọi nó, bạn thấy rằng nó không thực sự "có sẵn". Một ví dụ sẽ là nếu các dịch vụ trên đã có sẵn và cơ sở dữ liệu đã có sẵn, nhưng có một thủ tục được lưu trữ đặc biệt mà sẽ luôn luôn thất bại. Là dịch vụ "có sẵn" trong trường hợp này? Làm thế nào xấu nó sẽ được nếu bạn chỉ ra rằng nó đã có sẵn, nhưng thủ tục này được lưu trữ không thành công?
Trong nhiều trường hợp, tốt nhất là bạn chỉ cần tiếp tục và thực hiện cuộc gọi đến dịch vụ web, sau đó xử lý mọi ngoại lệ. Nếu bạn đã xác thực các thông số mà bạn đang gửi đến dịch vụ, thì, từ quan điểm của người dùng cuối, bất kỳ sự thất bại nào của số tiền dịch vụ đối với dịch vụ không khả dụng.
Không có sẵn để sử dụng thành công, bạn sẽ thấy.
Đây là những gì tôi đang sử dụng và nó hoạt động tuyệt vời. Và ServiceController tồn tại trong không gian tên 'System.ServiceProcess' nếu bạn muốn sử dụng câu lệnh Sử dụng ở trên cùng để đủ điều kiện.
try
{
ServiceController sc = new ServiceController("Service Name", "Computer's IP Address");
Console.WriteLine("The service status is currently set to {0}",
sc.Status.ToString());
if ((sc.Status.Equals(ServiceControllerStatus.Stopped)) ||
(sc.Status.Equals(ServiceControllerStatus.StopPending)))
{
Console.WriteLine("Service is Stopped, Ending the application...");
Console.Read();
EndApplication();
}
else
{
Console.WriteLine("Service is Started...");
}
}
catch (Exception)
{
Console.WriteLine("Error Occurred trying to access the Server service...");
Console.Read();
EndApplication();
}
Tôi sử dụng mã sau đây. Nó đơn giản và hoạt động ...
public bool IsServiceRunning()
{
try
{
System.Net.WebClient wc = new System.Net.WebClient();
string s = wc.DownloadString(new Uri("http://localhost:27777/whatever/services/GatherDataService?wsdl"));
}
catch (Exception ex)
{
return false;
}
return true;
}
chỉ mất uri endpoint của bạn và thêm? Wsdl
- 1. Kiểm tra dịch vụ web WCF
- 2. WCF - yêu cầu khách hàng kiểm tra tính khả dụng của dịch vụ
- 3. Lỗi WCF bằng WCFTestClient để kiểm tra một Dịch vụ Web WCF đơn giản
- 4. Dịch vụ web wcf json
- 5. Kiểm tra dịch vụ SOA
- 6. Tôi làm cách nào để kiểm tra dịch vụ WCF?
- 7. Dịch vụ WCF thay vì Dịch vụ Web ASMX?
- 8. Dịch vụ WCF có phải là dịch vụ web không?
- 9. Kiểm tra và giám sát dịch vụ web Giao thông
- 10. Thử nghiệm dịch vụ web WCF?
- 11. Tự động kiểm tra giao tiếp dịch vụ web
- 12. Sử dụng dịch vụ đám mây để kiểm tra ứng dụng web
- 13. Kiểm tra Json trong một dịch vụ web
- 14. Cách kiểm tra tính khả dụng của GPRS trước khi gửi dữ liệu qua HttpConnection
- 15. tiêu thụ dịch vụ web WCF từ ứng dụng Android?
- 16. Dịch vụ môi giới và WCF khả năng tương tác
- 17. Tôi làm cách nào để kiểm tra dịch vụ web?
- 18. Có sẵn dịch vụ web để kiểm tra điểm tín dụng của một người không?
- 19. Sự khác nhau giữa Dịch vụ Cửa sổ, ứng dụng Dịch vụ WCF và ứng dụng dịch vụ web ASP.NET?
- 20. Dịch vụ web SAP từ .NET qua WCF
- 21. Làm thế nào để thử các Dịch vụ Web của WCF với Rhino Mocks
- 22. Dịch vụ RIA .NET/Dịch vụ WCF
- 23. Sử dụng dịch vụ REST từ WCF
- 24. Dịch vụ WCF và Dịch vụ Windows
- 25. Kiểm tra kết nối WCF
- 26. Sử dụng Tiện ích mở rộng WCF Ninject với Dịch vụ Web WCF
- 27. Tính khả dụng cao
- 28. Khả năng tương thích ngược và Dịch vụ Web
- 29. Thử nghiệm tích hợp "Nhanh" của Dịch vụ WCF
- 30. Làm cách nào để kiểm tra tính khả dụng của Internet trong Java?
bất kỳ giải pháp cuối cùng với mã nguồn đầy đủ? – Kiquenet