我正在用C#MVC 5开发一个项目。
开发时我更喜欢关闭异常处理,例如在Global.asax.cs中:
MyFunction()
{
#if DEBUG
SetCustomError("mode", "Off");
#else
// Keep web.config content
#endif
}
在我的web.config中我有两个选择:
.on('click', onClickCircle)
.on('mouseenter', onMouseEnterCircle)
.on('mouseleave', onMouseLeaveCircle)
问题是我必须手动编辑它,如果在程序以调试/发布模式运行时自动更改它会很好。
我有一种方法可以在我的程序中更改代码吗? 我想要这样的东西:
<sys:Boolean x:Key="fancyGraphics" >True</sys:Boolean>
<Style TargetType="{x:Type Button}">
<Setter Property="Background" Value="#EEE"></Setter>
<Setter Property="Foreground" Value="#555"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="{TemplateBinding Background}" BorderThickness="1" BorderBrush="#DDD">
<Grid>
<ContentPresenter x:Name="MyContentPresenter" Content="{TemplateBinding Content}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0" />
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#333"></Setter>
<Setter Property="BorderBrush" Value="#888"></Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding Path=fancyGraphics}" Value="True">
<Setter Property="Effect">
<Setter.Value>
<DropShadowEffect BlurRadius="20"
Opacity="0.5"
ShadowDepth="0"
Color="#111" />
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
我可以在MVC结构中的哪个位置进行操作?
答案 0 :(得分:0)
正如已经指出Change Custom Error Mode in Web Config Programmatically in ASP.NET MVC 3回答了关于如何在代码中更改web.config中的设置的问题。
有些人认为它的代码味道会改变代码中的设置。我同意,但关键是它应该只在代码以调试模式运行时才能完成。不在生产中。