Tôi đã viết một trang web asmx webSerivce trên srv1. Tôi đã viết một dự án bll của một dự án asp.net (văn bản gốc: asp.net) trên srv2. Cả hai được lưu trữ dưới cùng miền webgọi asmx từ phía máy chủ C#: phần tử điểm cuối khớp với hợp đồng này có thể được tìm thấy trong phần tử máy khách
Tôi muốn gọi asmx từ dự án BLL của asp.net (văn bản gốc: asp.net (C#) mã đằng sau).
1) Tôi đã thêm tham chiếu web nhưng không thể tìm thấy bất kỳ hướng dẫn nào thực sự gọi cho dịch vụ được tham chiếu.
Tôi đã thử:
private void GetTemplateComponentsData()
{
var service = new ServiceReference.GetTemplateParamSoapClient();
TemplateParamsKeyValue[] responsArray = service.GetTemplatesParamsPerId(id);
foreach (var pair in responsArray)
{
TemplateComponentsData.Add(pair.Key, pair.Value);
}
}
nhưng nhận được lỗi sau khi thực hiện dòng đầu tiên: không thể tìm thấy yếu tố endpoint mặc định tham chiếu hợp đồng 'ServiceReference.GetTemplateParamSoap' trong phần ServiceModel cấu hình máy khách. Điều này có thể do không tìm thấy tệp cấu hình nào cho ứng dụng của bạn, hoặc vì không có phần tử điểm cuối nào khớp với hợp đồng này có thể được tìm thấy trong phần tử máy khách.
Tôi đang thiếu gì?
2) Tôi di chuyển proj asp.net và asmx cùng nhau từ miền này sang miền khác. Có cách nào để tham khảo dịch vụ web tương đối này không?
Tệ của tôi, tôi cần gọi asmx này từ dự án bll (dự án thư viện), vì vậy tôi cần phải thêm các phần tử theo cách thủ công vào web.config? –
@Elad Benda, có bạn cần một điểm cuối ứng dụng khách trong web.config của ứng dụng ASP.NET sử dụng thư viện này. Bạn cũng có thể cấu hình điểm cuối theo lập trình trong BLL nhưng thực hành tốt hơn là có phần cấu hình vì nó sẽ cho phép bạn dễ dàng thay đổi các thiết lập như url, bindings, ... –
Tôi ngạc nhiên bởi câu trả lời chi tiết của bạn. Cảm ơn nhiều ! Tôi có thể hỏi bạn đã lưu trữ hình ảnh vào trang web nào không? –