小编itm*_*nus的帖子

如何使用 JavaScript 更新 Blazor 中的 C# 值?

我想知道是否可以更新使用C#中的值BlazorJavascript

例如

<input type="text" @bind="TestValue" >
<input type="button" value="Change value" onclick="ChangeValueFromJs()" >

@code
{
public string TestValue {get;set;} = "init value";
}
Run Code Online (Sandbox Code Playgroud)

js

function ChangeValueFromJs()
{

}
Run Code Online (Sandbox Code Playgroud)

有没有办法使用 js 更新TestValue并成功将其绑定到文本输入ChangeValueFromJs

我尝试这样做,但似乎不起作用

function ChangeValueFromJs()
{
     DotNet.invokeMethodAsync("BlazorApp", "invokeFromJS", "ChangeValue");
}

@code
{
    [JSInvokable("invokeFromJS")]
    public static Task ChangeValue()
    {
          TestValue = "New value";
          return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

asp.net-core blazor

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

.razor 文件中的 Blazor 基础标签和 @page 指令

我开始使用Blazor服务器端,但我没有正确路由。我不明白的,需要base在标签_host.cshtml。如果我仍然必须base在每个 Blazor 组件中添加url,例如:我想要一个基地址,/app/并且@page示例的指令Counter值为 ,"/counter"不会“编译”到"/app/counter". 我必须设置@page"/app/counter"这是有道理的,但是这意味着,base在标签_host.cshtml是没有用的......

我在这里出了什么问题?

c# routing asp.net-core blazor-server-side

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

使用 GetJsonAsync 获取元组列表

我正在开发 Blazor 应用程序。我有一个 API 方法,它返回一个List<Tuple<string,int>>.

Postman 中的 API 响应:

[
    {
        "Item1": "1",
        "Item2": 1
    },
    {
        "Item1": "24",
        "Item2": 2
    }
]
Run Code Online (Sandbox Code Playgroud)

剃刀页面中的 API 调用:

private object dataSource;

protected override async Task OnInitializedAsync() {
    dataSource = await Http.GetJsonAsync<List<Tuple<string,int>>>("/Api/Default/GetProjectsList");
}
Run Code Online (Sandbox Code Playgroud)

但是,我收到以下错误:

Deserialization of reference types without parameterless constructor is not supported.
Run Code Online (Sandbox Code Playgroud)

我理解错误。

是否有可以解析的泛型类型GetJsonAsync也可以从 API 方法返回?

或者有没有办法解析这个元组?请帮我。

c# json.net asp.net-core asp.net-core-webapi blazor

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

如何在 F# 中为枚举指定基础类型

我们可以在 C# 中为 enum 指定一个底层类型,如下所示:

[Flags]
public enum MyKinds : ushort
{
    None  = 0,
    Flag1 = 1 << 0,
    Flag2 = 1 << 1,
    // ...
}
Run Code Online (Sandbox Code Playgroud)
  1. 我怎样才能使用 F# 做到这一点?
type MyKinds = 
    | None  = 0 
    | Flag1 = 1
    | Flag2 = 2

    // inherit ushort  // error FS0912
Run Code Online (Sandbox Code Playgroud)
  1. 如何像1 << 0F# 中那样使用按位运算符定义枚举值?
type MyKinds = 
    | None = 0 
    | Flag1 = 1 << 0    // error FS0010
    | Flag2 = 1 << 1 …
Run Code Online (Sandbox Code Playgroud)

c# f# .net-core

0
推荐指数
1
解决办法
210
查看次数