我有两个应用程序。其中一个是网络应用程序,另一个是移动应用程序。我试图从Web应用程序解析其中一个视图,并为移动应用程序编译一个html文件。我在Web应用程序中的视图结构如下
网络应用程序内置于asp.net mvc,我使用Microsoft visual studio cordova构建移动应用程序。
我有一个单独的项目,它接受App.cshtml并为移动应用程序编译index.html。这是我的App.cshtml文件的结构
@model Account
@{
Layout = "~/Views/Shared/_Layout.cshtml";
ViewBag.Title = Texts.App;
}
@section head{
@Styles.Render("~/Content/css/app")
}
@section scripts {
@Scripts.Render("~/bundles/moment")
@Scripts.Render("~/bundles/tippnett/app")
<script>
var userId = '@Model.Id';
TippNett.StartApp();
</script>
}
<div id="appview" class="loading">
<div id="workspace" class="map_canvas">
<section class="other-stuff">
@RenderPage("~/Views/Home/subPagesForApp/_locationWindow.cshtml")
@RenderPage("~/Views/Home/subPagesForApp/_moveLocationWindow.cshtml")
@RenderPage("~/Views/Home/subPagesForApp/_orderWindow.cshtml")
@RenderPage("~/Views/Home/subPagesForApp/_createLocation.cshtml")
@RenderPage("~/Views/Home/subPagesForApp/_ordersListWindow.cshtml")
@RenderPage("~/Views/Home/subPagesForApp/_reportAbuse.cshtml")
</section>
</div>
<div class="locations-list" data-bind="visible:locationView">
@RenderPage("~/Views/Home/subPagesForApp/_locationList.cshtml")
</div>
<div id="loading-wale">
<div id="loading-info">
<div>
<i class="spinner"> </i>
</div>
<div>@Texts.Loading</div>
</div>
</div>
</div>
<div class="show-for-small" id="stick-menu" data-role="footer">
<div class="icon-bar three-up ">
<a class="item active locations" data-bind="click: openLocationView.bind($data,true)">
<i class="fi-marker"></i>
<label>@Texts.Location</label>
</a>
<a class="item maps" data-bind="click: openMapView.bind($data,true)">
<i class="fi-map"></i>
<label>@Texts.Maps</label>
</a>
<a class="item notifications" data-bind="click: openOrders.bind($data,true)">
<i class="fi-list"></i>
<span class="order-notification-counter notification-counter" data-bind=" text: orders().length,visible: orders().length > 0"></span>
<span class="matches-notification-counter notification-counter" data-bind=" text: matches().length,visible: matches().length > 0"></span>
<label>
@Texts.OrdersLabel
</label>
</a>
</div>
我已经研究过 RazorEngine.Razor.Compile ,但没有运气。我也查看了这个库http://razorengine.codeplex.com/,但无法到达任何地方。
答案 0 :(得分:0)
cshtml运行服务器端,cordova应用程序运行在移动(客户端)
所以我认为你不能在移动设备上运行mvc,你应该使用一些移动框架
html作为模板,js调用ajax获取数据,并绑定到html模板。