Я создал контроллер, используя asp.net mvc, и каждый раз, когда мой контроллер пытается получить доступ к этому контроллеру, я получаю сообщение об ошибке
"Ошибка при попытке создать контроллер типа«SMSCampaignController». Убедитесь, что на контроллере есть открытый конструктор без параметров »
Когда я помещаю конструктор без параметров в контроллер, я получаю ошибку 401, означающую, что приложение не может найти контроллер.Другая сбивающая с толку вещь заключается в том, что этот контроллер предназначен только для вызова onClick, но по какой-то причине он вызывается при запуске приложения
Вот мой контроллер ниже
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Security;
using Repositories.Interfaces;
using Repositories.Interfaces.Dtos;
using SimSentinel.Models;
using System;
using System.Text.RegularExpressions;
using Repositories.Interfaces.SMSCampaign;
namespace SimSentinel.Controllers
{
[Authorize]
public class SMSCampaignController : ApiController
{
private readonly ISMSCampaignRepository _smsCampaignRepository;
public static int globalUserId;
//public SMSCampaignController()
// { }
public SMSCampaignController(ISMSCampaignRepository smsCampaignRepository)
{
_smsCampaignRepository = smsCampaignRepository;
}
[HttpPost]
public string Post(SMSCampaignViewModel smsCampaign)
{
if (smsCampaign == null)
{
return null;
}
var smsCampaignDto = new SMSCampaign(
smsCampaign.smsCampaignId,
smsCampaign.costCentreId,
smsCampaign.campaignName,
smsCampaign.msisdn,
smsCampaign.message,
smsCampaign.createdAt,
smsCampaign.campaignStartDate,
smsCampaign.campaignExpiryDate,
smsCampaign.clientManager);
//_organisationEmployeeRepository.UpdateEmployee(employeeDto, employee.passwordCheck);
_smsCampaignRepository.SaveSMSCampaign(smsCampaign.smsCampaignId, smsCampaign.costCentreId, smsCampaign.campaignName, smsCampaign.msisdn, smsCampaign.message, smsCampaign.createdAt, smsCampaign.campaignStartDate, smsCampaign.campaignExpiryDate, smsCampaign.clientManager);
return "Your profile was succesfully updated";
}
}
}