Responder
MEF y WEB SERVICES
Buenas tardes estoy desarrollando una red social utilizando MEF que es una nueva biblioteca en. NET Framework 4 que soluciona este problema mediante la simplificación del diseño de aplicaciones extensible y componentes. Y si lo corro abre bien todo y no me da ningun error... Ahora lo que yo quiero es crear ServiciosWeb y ya cree un Login utilizando la bibliotecas con MEF pero me marca un error. Aqui esta el codigo.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.ComponentModel.Composition;
using Blocktogo.Common;
using Blocktogo.Interfaces;
using Blocktogo.Web.Accounts.Interfaces;
using Blocktogo.BusinessLogic.Interfaces;
using Blocktogo.DataAccess.Interfaces;
namespace Blocktogo.Web
{
///
/// Descripción breve de WebService
///
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// Para permitir que se llame a este servicio Web desde un script, usando ASP.NET AJAX, quite la marca de comentario de la línea siguiente.
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService
{
private ILogin _view;
[Import]
private IAccountService _accountService;
[Import]
private IRedirector _redirector;
[Import]
private IWebContext _webContext;
public void Init(ILogin view)
{
_view = view;
MEFManager.Compose(this);
if (!string.IsNullOrEmpty(_webContext.FriendshipRequest))
_view.DisplayMessage("Login to add this friend!");
}
[WebMethod]
public void Login(string username, string password)
{
string message = _accountService.Login(username, password);
_view.DisplayMessage(message);
}
public void GoToRegister()
{
_redirector.GoToAccountRegisterPage();
}
public void GoToRecoverPassword()
{
_redirector.GoToAccountRecoverPasswordPage();
}
}
}
me aparece que _accountService es null osea este error...
System.NullReferenceException: Referencia a objeto no establecida como instancia de un objeto.
Que tengo que hacer? si al correrlo normal no aparece ningun error y al crear un servicio web me marca este error
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.ComponentModel.Composition;
using Blocktogo.Common;
using Blocktogo.Interfaces;
using Blocktogo.Web.Accounts.Interfaces;
using Blocktogo.BusinessLogic.Interfaces;
using Blocktogo.DataAccess.Interfaces;
namespace Blocktogo.Web
{
///
/// Descripción breve de WebService
///
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// Para permitir que se llame a este servicio Web desde un script, usando ASP.NET AJAX, quite la marca de comentario de la línea siguiente.
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService
{
private ILogin _view;
[Import]
private IAccountService _accountService;
[Import]
private IRedirector _redirector;
[Import]
private IWebContext _webContext;
public void Init(ILogin view)
{
_view = view;
MEFManager.Compose(this);
if (!string.IsNullOrEmpty(_webContext.FriendshipRequest))
_view.DisplayMessage("Login to add this friend!");
}
[WebMethod]
public void Login(string username, string password)
{
string message = _accountService.Login(username, password);
_view.DisplayMessage(message);
}
public void GoToRegister()
{
_redirector.GoToAccountRegisterPage();
}
public void GoToRecoverPassword()
{
_redirector.GoToAccountRecoverPasswordPage();
}
}
}
me aparece que _accountService es null osea este error...
System.NullReferenceException: Referencia a objeto no establecida como instancia de un objeto.
Que tengo que hacer? si al correrlo normal no aparece ningun error y al crear un servicio web me marca este error