这是我的课,称为BoolToVisibilityValueConverter
:
public class BoolToVisibilityValueConverter : MvxValueConverter<bool, ViewStates>
{
protected override ViewStates Convert(bool value, Type targetType, object parameter, CultureInfo culture)
{
return value ? ViewStates.Visible : ViewStates.Gone;
}
protected override bool ConvertBack(ViewStates value, Type targetType, object parameter, CultureInfo culture)
{
return ViewStates.Visible == value;
}
}
它从
MvxValueConverter
继承,该From
是使用参数To
和MvxValueConverter
的通用类。 CS0115
的源代码可以在Github上的MvvmCross存储库-MvxValueConverter下找到。我可以构建项目,运行它并看到它的工作。我将Visual Studio 2015与最新的Xamarin和最新版本的MvvmCross(4.0.0)一起使用
但是,在我们的TeamCity服务器上,相同的构建失败:
[14:40:06] [Csc] ValueConverters \ BoolToVisibilityValueConverter.cs(10,
33):错误CS0115:
'MyProject.Droid.ValueConverters.BoolToVisibilityValueConverter.Convert(bool,
System.Type,object,System.Globalization.CultureInfo)':不适合
发现要覆盖的方法
[14:40:06] [Csc] ValueConverters \ BoolToVisibilityValueConverter.cs(15,
27):错误CS0115:
'MyProject.Droid.ValueConverters.BoolToVisibilityValueConverter.ConvertBack(Android.Views.ViewStates,
System.Type,object,System.Globalization.CultureInfo)':不适合
发现要覆盖的方法
当
A method was marked as an override, but the compiler found no method to override
时,发生来自MSDN的错误。 TeamCity已安装Visual Studio 2013。为什么我的构建失败?
最佳答案
您需要打开android项目.csproj文件,并手动添加对System.Globalization的引用