2009-06-03 25 views
0

您如何知道某个值是否传入了没有[Required]标志的属性。自定义MSbuild任务中的必需标记

不需要传递的字符串的值是什么?如果它是一个空字符串,那么你如何知道与调用者发送的空字符串的区别?

回答

1

如果你需要知道,如果这个值是设定或者没有,那么你可以做一个标记在你的财产例如

public MyTask : Task 
{ 
    private string mName; 
    private bool mNameSet; 

    public string Name 
    { 
     get{return mName;} 
     set 
     { 
      mName = value; 
      mNameSet = true; 
     } 
    } 

...更多在这里

} 

所以你可以检查mNameSet标志以查看属性是否设置。 Sayed Ibrahim Hashimi

我的书:Inside the Microsoft Build Engine : Using MSBuild and Team Foundation Build

0

你不能分辨。如果任务没有在任务构造函数中设置默认值,则两者都将为空。

我不知道它是否应该改变自定义任务。如果参数为空或空 - --- String.IsNullOrEmpty() ---那么任务应该分支到该特定值的默认逻辑。

相关问题