Windows Mobile にある古いコードを移植しています。コードは .NET 3.5 CE で正常にコンパイルされます。MonoForAndroid でプロジェクトを作成し、同じコード (リンクとして参照される .cs ファイル) を参照したところ、Android 用に正常にビルドされました。
しかし、MonoTouch 用のプロジェクトを作成し、同じ C# コード ファイルを参照すると、メソッドが実装されていないというエラーが発生してビルドできません。
ここに私が持っているものがあります:
public interface IJobController
{
IUser User {get; }
}
public class BaseController
{
public virtual IUser User {get;set;}
}
public class BaseJobController : BaseController
{
public new User User {get;set;}
}
public class JobController : BaseJobController, IJobController
{
// some code here that uses the User property
}
エラーは、JobController
メソッドを実装していないことを示していますIUser User { get;}
。候補は の 1 つですが、型が と一致しBaseJobController
ません。IUser
User
この同じコードは、Windows Mobile .NET 3.5 CE で長年動作しており、同じコードは MonoForAndroid で正常にコンパイルされます。ただし、MonoTouch ではコンパイルできません。
私の懸念は、MonoTouch で実装される継承と Interface-Implementation の方法に違いがあることです。私には多くの作業 (移植するコードがたくさんあります) があるので、このような驚きを期待する必要がありますか??
どんな助けでも大歓迎です。