.net 生成xml的技术类似于razor或任何其他视图引擎

.net 生成xml的技术类似于razor或任何其他视图引擎,.net,xml,viewengine,.net,Xml,Viewengine,我目前正在制作一个网站,返回相当多的xml类型,其中一些相当大。我真的不需要求助于xml序列化,因为在我的情况下,它会有点慢,而且一些类字段必须根据上下文进行部分序列化。我正在使用asp.NETMVC3.0和.net 所以我想,如果我能使用类似于视图引擎的技术来生成这些xml文件,那就太好了。也许我甚至可以使用现有的razor视图引擎来实现这一点,但我还没有看到任何类似的东西 我的问题是这样的东西是否存在,或者我是否可以使用现有技术以这种方式生成xml文件 你不需要“类似剃须刀”的技术。。。你可

我目前正在制作一个网站,返回相当多的xml类型,其中一些相当大。我真的不需要求助于xml序列化,因为在我的情况下,它会有点慢,而且一些类字段必须根据上下文进行部分序列化。我正在使用asp.NETMVC3.0和.net

所以我想,如果我能使用类似于视图引擎的技术来生成这些xml文件,那就太好了。也许我甚至可以使用现有的razor视图引擎来实现这一点,但我还没有看到任何类似的东西


我的问题是这样的东西是否存在,或者我是否可以使用现有技术以这种方式生成xml文件

你不需要“类似剃须刀”的技术。。。你可以用剃须刀;)

您只需在Razor视图中指定内容类型(必要时删除布局):

@使用mvcapapplication1.Models;
@模型IEnumerable
@{
布局=”;
Response.ContentType=“text/xml”;
}
@foreach(模型中的产品p)
{
@p、 名字
}

您可以直接使用LINQ to XML进行此操作。您知道Visual Studio中是否有关闭html验证的方法,以便XML标记不会被视为无效的html元素吗?
@using MvcApplication1.Models;
@model IEnumerable<Product>
@{
    Layout = "";
    Response.ContentType = "text/xml";
}
<?xml version="1.0" ?>
<products>
    @foreach (Product p in Model)
    {
        <product id="@p.Id">
            <name>@p.Name</name>
        </product>
    }
</products>