Ho scritto un asmx webSerivce su srv1. Ho scritto un progetto di bll di un progetto asp.net (testo originale: asp.net) su srv2. Entrambi sono ospitati sotto lo stesso dominio webchiamando asmx dal lato server C#: l'elemento endpoint che corrisponde a questo contratto può essere trovato nell'elemento client
voglio chiamare l'ASMX dal progetto BLL del asp.net (testo originale: asp.net (C#) codice dietro).
1) Ho aggiunto un riferimento Web, ma non ho trovato alcun tutorial su come chiamare realmente il servizio di riferimento.
ho provato:
private void GetTemplateComponentsData()
{
var service = new ServiceReference.GetTemplateParamSoapClient();
TemplateParamsKeyValue[] responsArray = service.GetTemplatesParamsPerId(id);
foreach (var pair in responsArray)
{
TemplateComponentsData.Add(pair.Key, pair.Value);
}
}
ma il seguente errore durante l'esecuzione della prima linea: Impossibile trovare elemento endpoint predefinito che fa riferimento a contratto 'ServiceReference.GetTemplateParamSoap' nella sezione di configurazione del client ServiceModel. Ciò potrebbe essere dovuto al fatto che non è stato trovato alcun file di configurazione per l'applicazione o perché non è stato trovato alcun elemento endpoint che corrisponda a questo contratto nell'elemento client.
Cosa mi manca?
2) I piano per la migrazione di asp.net proj e asmx insieme da un dominio all'altro. C'è un modo per fare riferimento a questo webservice relativamente?
Il mio male, ho bisogno di chiamare questo asmx dal progetto bll (progetto di libreria), quindi ho bisogno di aggiungere manualmente gli elementi a web.config? –
@Elad Benda, sì, è necessario un endpoint client nel web.config dell'applicazione ASP.NET che utilizza questa libreria. Si potrebbe anche configurare l'endpoint in modo programmatico nella BLL, ma è meglio avere una sezione di configurazione in quanto ti permetterà di cambiare più facilmente impostazioni come url, binding, ... –
Sono stupito dalla tua risposta dettagliata. grazie mille ! Posso chiedere su quale sito hai ospitato le tue immagini? –