如何在另一个 MVC 应用程序中调用一个视图

How to call one View in another MVC application

我正在尝试创建两个 MVC 应用程序,在第一个应用程序中创建了一个视图并编译了应用程序,在第二个应用程序中我添加了第一个应用程序的 dll。 在 routeconfig.cs 文件中添加了以下行。

"Structure of First application"

Application1

 Controller
       Home(Actionmethod is Home)
       View
         Home.cshtml

 Application2: references:Application1

_layout.cshtml.

正在尝试访问 url: localhost/Home

routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
        namespaces: new[] { "TestApp.Controllers" }

我正在尝试从第一个应用程序调用视图,但它无法从第一个应用程序找到视图,任何人都可以告诉我是否需要添加任何其他配置才能访问视图第一次申请。

提前致谢。

请解释为什么将它们放在两个单独的 mvc 应用程序中。

app 1.
   controller
   view
   model
app 2. 
   controller
   view
   model

我不确定视图是否被编译到 .dll 中(如果是的话)。那你是如何访问它们的?

您还需要为您的视图注册搜索位置...我假设您使用的是剃须刀引擎。

http://theshravan.net/blog/configure-the-views-search-locations-in-asp-net-mvc/

Can I specify a custom location to "search for views" in ASP.NET MVC?

基本上您需要为您的视图注册搜索位置默认为

App
   Views
      [ViewName]Controller

我强烈感觉到应用程序引用了 .dll [App1] 没有任何内容告诉它也可以在 App2 中查看视图。

希望这是有道理的 ;-)

尝试在您的项目中创建 Area 并创建所需的控制器和视图,而不是访问另一个项目的视图。