Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# blazor中是否可以使用泛型类型约束?_C#_Blazor Server Side_Asp.net Blazor - Fatal编程技术网

C# blazor中是否可以使用泛型类型约束?

C# blazor中是否可以使用泛型类型约束?,c#,blazor-server-side,asp.net-blazor,C#,Blazor Server Side,Asp.net Blazor,如何将TModel限制为仅类或实现specifix接口 @typeparam TModel 无法使语法正常工作。解决方案是在部分代码隐藏类中添加类型约束。它起作用了 的确,Sven发布的答案是有效的,但是我需要做一个修改——将3.0添加到我的.csproj文件中。在那之后,这个项目被编译了。 以下是我的完整文件: Project.cs net5.0 3 使可能 service-worker-assets.js 剃须刀组件 @typeparam TViewModel @继承PageBase

如何将TModel限制为仅类或实现specifix接口

@typeparam TModel

无法使语法正常工作。

解决方案是在部分代码隐藏类中添加类型约束。它起作用了

的确,Sven发布的答案是有效的,但是我需要做一个修改——将
3.0
添加到我的.csproj文件中。在那之后,这个项目被编译了。 以下是我的完整文件:

  • Project.cs
  • 
    net5.0
    3
    使可能
    service-worker-assets.js
    
  • 剃须刀组件
  • @typeparam TViewModel
    @继承PageBase
    一些文本
    
  • 核心
  • 公共抽象部分类AuthenticatedPageBase
    其中TViewModel:ViewModelBase
    {
    }
    
    编辑:
    好吧,从csproj文件中删除
    标记后,它似乎仍然有效。

    在GitHub中,这似乎有一个尚未解决的问题。在这篇文章中,有一个可能对你有用的解决方案:你能举个例子吗?我按照你描述的做了,Blazor说分部有不同的基类,即一个(来自razor)在没有约束的情况下编译,另一个(c#代码隐藏)在约束的情况下。如果Blazor说分部有不同的基类,那么razor文件很可能至少包含一个错误。这甚至可能是在使用net5.0时隐式使用的子视图/控件Razorlang版本3中的一个问题。我想这只是巧合。