加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 使用NAnt中的ASP编译器构建ASP .Net MVC应用程序

发布时间:2020-12-16 03:56:37 所属栏目:asp.Net 来源:网络整理
导读:我使用ASP编译器成功地在NAnt中构建ASP .Net应用程序,没有问题.作为我的持续集成过程的一部分. 但是,如果我在ASP .NET MVC应用程序上尝试完全相同的过程,则构建在NAnt中失败,但将在Visual Studio中成功编译.我在NAnt中收到的错误消息是: [HttpParseExceptio
我使用ASP编译器成功地在NAnt中构建ASP .Net应用程序,没有问题.作为我的持续集成过程的一部分.

但是,如果我在ASP .NET MVC应用程序上尝试完全相同的过程,则构建在NAnt中失败,但将在Visual Studio中成功编译.我在NAnt中收到的错误消息是:

[HttpParseException]: Could not load type ‘MyNamespace.Views.Home.Index’

看来文件名中的点有问题,但我可能错了.

任何建议都是最受欢迎的.

解决方法

在使用aspnet_compile之前,需要将MVC应用程序构建为项目.如果您的MVC项目使用其他类库项目,则还需要编译它们.

运行aspnet_compile之后,我们想要删除不应该是已部署站点的一部分的各种文件.

此构建文件位于项目MvcApplication的父目录中.

<project default="build">
    <property name="build.dir" value="${project::get-base-directory()}"/> 
    <property name="build.config" value="Release" />

    <target name="build">

        <exec program="${framework::get-framework-directory('net-3.5')}/msbuild.exe">
            <arg value="/property:Configuration=${build.config}" />
            <arg value="${build.dir}/MvcApplication/MvcApplication.csproj" />
        </exec>

        <delete dir="${build.dir}/PrecompiledWeb" includeemptydirs="true" failonerror="false"/>

        <exec program="${framework::get-framework-directory('net-2.0')}/aspnet_compiler.exe">
            <arg value="-v" />
            <arg value="/" />
            <arg value="-p" />
            <arg value="MvcApplication/" />
            <arg value="-f" />
            <arg value="PrecompiledWeb" />
        </exec>

        <delete verbose="true" includeemptydirs="true" failonerror="false">
            <fileset basedir="${build.dir}/PrecompiledWeb">
                <include name="Controllers" />
                <include name="Properties" />
                <include name="obj/**" />
                <include name="obj" />
                <include name="*.csproj" />
                <include name="*.csproj.user" />
            </fileset>
        </delete>

    </target>
</project>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读