gpt4 book ai didi

asp.net-mvc-3 - slowcheetah 新的 asp.net mvc 转换不工作

转载 作者:行者123 更新时间:2023-12-02 02:13:12 26 4
gpt4 key购买 nike

我想我一定是错过了一些关于 slowcheetah 的东西。我创建了一个新的 asp.net mvc3 应用程序。使用默认值向 web.config 添加了一个应用程序设置。然后我为每个调试和发布配置文件添加了一个转换。我还创建了一个读取此值的 View 。当我预览转换时,转换工作正常。我的理解是,如果我在 Release模式下运行项目,那么项目将从发布转换中读取应用程序设置,如果我在 Debug模式下运行项目,它将从调试配置中读取应用程序设置。

这里是web.config的相关部分

<appSettings>      
<add key="cheetah_val" value="default_val"/>
</appSettings>

这里是 web.debug.config

<?xml version="1.0"?>

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">

<appSettings>
<add key="cheetah_val" value="debug_val" xdt:Transform="Replace" xdt:Locator="Match(key)"/>

</appSettings>
<system.web>

</system.web>
</configuration>

这里是 web.release.config

<?xml version="1.0"?>

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">

<appSettings>
<add key="cheetah_val" value="release_val" xdt:Transform="Replace" xdt:Locator="Match(key)"/>

</appSettings>
<system.web>
<compilation xdt:Transform="RemoveAttributes(debug)" />

</system.web>
</configuration>

HomeController.cs

public class HomeController : Controller
{
public ActionResult Index()
{

ViewBag.CheetahMessage = System.Configuration.ConfigurationManager.AppSettings["cheetah_val"];
return View();
}
}

和index.cshtml

@{
ViewBag.Title = "Home Page";
}

<h2>@ViewBag.CheetahMessage</h2>

我希望输出在 Release模式下是 release_val,在 Debug模式下是 debug_val。我究竟做错了什么?还是我错过了一些重要的东西?对于网站,F5 功能是否不起作用?对于网站,我是否必须实际发布此文件才能使转换生效?

最佳答案

My understanding was that if I run the project in release mode then the project would read in the app setting from the release transformation, and if I ran the project in debug mode it would read in the app setting from the debug configuration.

这也是我最初阅读和下载 slowcheetah 时的假设。

For web sites do I have to actually publish this to get the transformation to work?

据我所知,您必须同时发布网站和 Web 应用程序项目才能使转换生效。 Slowcheetah 甚至不这样做,它是 VS 发布工具。 Slowcheetah 只允许您预览转换。

如果我在这方面有误,请有人说出来,因为我也希望能够在 IIS Express 中进行本地调试时运行转换。

一种可能的解决方案是在您的计算机上设置真正的 IIS,以便从您的发布目录提供服务。然后,当您想要查看转换如何影响行为时,您可以将 Web 发布到 IIS 并使用它来查看站点。不过,我认为这不会让您附加调试器。

关于asp.net-mvc-3 - slowcheetah 新的 asp.net mvc 转换不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11813223/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com