运算符“ &&”不能应用于tst文件中“方法组”类型的操作数

时间:2018-09-27 13:57:16

标签: .net angular typescript

我正在尝试检查C#应用程序中tst(打字稿生成器)文件中的条件。我收到错误运算符“ &&”不能应用于类型“方法组”的操作数。我得到的错误是在我检查HasParameters的ObserveResponse中

bool HasParameters(Method m) => m.Parameters != null  && m.Parameters.Count > 0 ? true : false;

string ObserveResponse(Method m)
   {
    var api = (Class)m.Parent;
    if ((api.Attributes.Any(i=>i.Name=="AllowAnonymous")) && HasParameters ) return ",{observe: 'response'}";
    if (api.Attributes.Any(i=>i.Name=="Authorize")) return '';
     if (m.Attributes.Any(i=>i.Name=="AllowAnonymous")) return ",{observe: 'response'}";
    if (m.Attributes.Any(i=>i.Name=="Authorize")) return '';
    return "#ERROR";
   }

1 个答案:

答案 0 :(得分:0)

HasParameters是一种方法,因此您需要调用它(带有一个参数-大概是m):

bool HasParameters(Method m) => m.Parameters != null  && m.Parameters.Count > 0 ? true : false;

string ObserveResponse(Method m)
   {
    var api = (Class)m.Parent;
    if ((api.Attributes.Any(i=>i.Name=="AllowAnonymous")) && HasParameters(m) ) return ",{observe: 'response'}";
    if (api.Attributes.Any(i=>i.Name=="Authorize")) return '';
     if (m.Attributes.Any(i=>i.Name=="AllowAnonymous")) return ",{observe: 'response'}";
    if (m.Attributes.Any(i=>i.Name=="Authorize")) return '';
    return "#ERROR";
   }

(在ObserverResponse方法中将HasParameters更改为HasParameters(m))