数据注释从控制器动态获取参数

问题描述

我会验证当前活动用户是否有权访问公司。 下面我有两个 GET 和 PUT 请求示例,用于获取公司详细信息和更新的公司详细信息。 是否可以编写数据注释以便我可以指向它或向其发送属性以便我能够验证用户是否可以访问它?

示例:

[ValidateCompanyPermission("companyId")]
[HttpGet]
public async Task<IActionResult> GetCompany(long companyId)
{
    
}

public class CompanyRequest
{
    public long UpdatedById { get; set; }
    public string NewCompanyName
}

[ValidateCompanyPermission("UserRequest.UpdatedById")]
[HttpPut]
public async Task<IActionResult> GetCompanz(CompanyRequest companyRequest)
{
    
}

解决方法

如果向属性逻辑发送参数是你想要的,那是不可能的。我在回答 here

的同一问题中引​​用了 vcsjones

属性是元数据。参数值必须是常数值。