有什么我可以控制何时在Blazor服务器应用程序中添加@page指令的方法吗?

例如,假设我希望页面/Test仅包含在调试配置中,但不包含在发行版中.

我已经try 在.razor文件中使用#define指定编译器指令.

推荐答案

我已经try 在.razor文件中使用#define指定编译器指令.

这是行不通的.但你可以在.razor.cs文件中应用#if.因此,您需要首先创建代码隐藏文件.(在@code标签上键入Ctrl+.)

然后:

#if DEBUG
    [RouteAttribute("/fetchdata")]
#endif
    public partial class FetchData
    { 
       ...

@page("<path>")变成[RouteAttribute("<path>")]

Csharp相关问答推荐

在. NET Core 8 Web API中,当为服务总线使用通用消费者时,如何防止IServiceProvider被释放或空?"

EF Core在请求列表时忽略列,但在按ID获取时包含

如何在C#中删除一个特殊字符,如"使用Regex"

如何使用XmlSerializer反序列化字符串数组?

Unity中的刚体2D运动

为什么我的表单在绑定到对象时提交空值?

如何在没有前缀和可选后缀的情况下获取Razor Page Handler方法名称?

MigraDoc文档

如何在C#中将方法/线程启动传递给基本构造函数

用于管理System.Text.Json中的多态反序列化的自定义TypeInfoResolver

DateTime ToString()未以指定格式打印

具有可空类型的C#NOTNULL约束具有意外行为

在字符串C#之前获取数字

在使用StringBuilder时,如何根据 colored颜色 设置为richTextBox中的特定行着色?

如何将%{v_扩展}转换为%{v_扩展}>>

C#中使用ReadOnlySpan的泛型类型推理

如何在更新数据库实体时忽略特定字段?

为什么Visual Studio 2022建议IDE0251将我的方法设置为只读?

默认架构不存在EF核心迁移

为什么我不能在固定语句中使用外部函数?