1
我已將兩個應用程序之間共享的代碼移除到包含控制器的共享項目中。我得到「多種類型被發現,匹配控制器名爲」錯誤。我不知道爲什麼會發生這種情況。所以這是我的共享控制器項目之間的MVC共享項目找到控制器的多種類型
namespace App.Web.Shared.Controllers
{
public class ParkingTicketController : BaseController
{
public ParkingTicketController(ServiceLocator serviceLocator) : base(serviceLocator)
{
}
/// <summary>
/// Views the specified identifier.
/// </summary>
/// <param name="publicId">The public identifier.</param>
/// <returns></returns>
[AuthorizeAccess(Roles = ApplicationRoles.None)]
public ActionResult Display(string publicId)
{
//Shared
}
}
}
namespace App.Web.Driver.Controllers
{
[AuthorizeAccess(Roles = ApplicationRoles.Driver)]
public class ParkingTicketController : Shared.Controllers.ParkingTicketController
{
//
// GET: /ParkingTicket/
/// <summary>
/// Initializes a new instance of the <see cref="ParkingTicketController"/> class.
/// </summary>
/// <param name="serviceLocator">The service locator.</param>
public ParkingTicketController(ServiceLocator serviceLocator) : base(serviceLocator)
{
}
}
}
這是建立路由。所以應該匹配的驅動程序控制器
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional},
namespaces: new[] { "App.Web.Driver.Controllers" });
我只是從我的觀點稱這是
@Html.ActionLink("View Print", "Display", "ParkingTicket", new { id = Model.ParkingTicket.PublicId }, new { @class = "btn btn-blue" })
錯誤消息