如何解决Mudblazor 显示值 @bind-Value 与预期不同
如何像这样显示@bind-value:design-value
代码如下:
Product.cs
namespace Shared.Domains
{
public class Product
{
public string Name { get; set; }
public string Design { get; set; }
}
}
ProductsController.cs (Web Api)
[HttpGet("get")]
public async Task<ActionResult<List<Product>>> Get()
{
return await _context.Products.ToListAsync();
}
ProductDetails.razor(代码)
private Product design;
private async Task<IEnumerable<Product>> Design(string value)
{
var data = await HttpClient.GetFromJsonAsync<List<Product>>("/products/get");
data = data.Select(x => new Product
{
Design = x.Design
}).ToList();
// if text is null or empty,show complete list
if (string.IsNullOrEmpty(value))
return data;
return data.Where(x => x.Design.Contains(value,StringComparison.InvariantCultureIgnoreCase));
}
ProductDetails.razor(剃须刀)
<MudAutocomplete T="Product" Label="Design" ResetValueOnEmptyText="true"
@bind-Value="@design" SearchFunc="@Design" MaxItems="null"
ToStringFunc="@(e=> e == null ? null : e.Design)" />
@(design?.ToString() ?? "Not selected")
我拥有的输出是 Shared.Domains.Product
解决方法
问题解决了。
应该像这样输入!
@(design != null ? design.Design : "Not selected")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。