小编Bub*_*nga的帖子

导航管理器 NullReferenceException

我尝试按照此处的建议从 URL 获取查询字符串,但收到 NullReferenceException。我的代码和链接帖子中的代码之间的唯一区别是我的代码是静态的,我不知道这会如何导致错误。

public static class Extensions
    {
        //Other helper methods

        [Inject]
        public static NavigationManager MyNavigationManager { get; set; }

        public static string GetQueryParm(string parmName)
        {
            //Null Reference Exception is called on the line below
            var uriBuilder = new UriBuilder(MyNavigationManager.Uri);           
            var q = System.Web.HttpUtility.ParseQueryString(uriBuilder.Query);
            return q[parmName] ?? "";
        }
    }
Run Code Online (Sandbox Code Playgroud)

我这样调用这个方法:

 else if (date == null | string.IsNullOrWhiteSpace(Extensions.GetQueryParm("d")))
 {
     date = DateTime.Today.ToString("yyyy-MM-dd");
 }
Run Code Online (Sandbox Code Playgroud)

c# dependency-injection nullreferenceexception blazor

3
推荐指数
1
解决办法
981
查看次数

将枚举的每个值绑定到复选框 Blazor

我有一个 [Flags] 枚举,其中包含我想要收集的一些数据点。我的目标是将每个值(每个位)显示并绑定为单独的复选框以供用户检查。但是,我不知道如何将 Flags 枚举的各个值绑定到组件,也不知道是否可能。为了更好地解释我的观点:

说这是我的枚举:

[Flags]
public enum DataPoints{
     Large = 1,
     Soft  = 2,
     Green = 4,
     Round = 8
}
Run Code Online (Sandbox Code Playgroud)

然后我希望表单的 DataPoints 类型模型中有一个可以保存这些值的属性:

//possible data points like:
// 9: Round and Large
// 6: Soft and Green
public DataPoints Data;
Run Code Online (Sandbox Code Playgroud)

我在想类似以下的内容,但我认为您不能将枚举的各个值/位绑定到这样的组件:

@foreach (DataPoints datum in Enum.GetValues(typeof(DataPoints)))
   {
      <CheckBox @bind-Value="what? Data.datum?"></CheckBox>
   }
Run Code Online (Sandbox Code Playgroud)

c# enums enum-flags blazor .net-5

2
推荐指数
1
解决办法
2102
查看次数