Я пытаюсь реализовать простой частичный класс и метод в общем проекте в приложении Forms для работы с проектами Android и iOs.
Все классы имеют одинаковое пространство имен ( sharedTest ) и имеют ключевое слово частичное, но частичные классы и методы в файлах Android и iOs, похоже, не распознают другую часть, реализованную в Shared.code.
Частичный класс Shared говорит «частичный класс с одной частью»
Метод PlatformGetFilePath в файлах Android и iOs выдает ошибку«Не найдено определяющего объявления для реализации объявления частичного метода»
Переменная _filepath в файлах Android и iOs «не существует в текущем методе» *
isЕсть что-нибудь, что мне не хватает, чтобы сделать эту работу?
Частичный класс в проекте Shared:
using System;
using Xamarin.Forms;
namespace sharedTest
{
public partial class Shared
{
public Shared()
{
}
partial void PlatformGetFilePath(string filename);
string _filepath;
public string GetFilePath(string filename)
{
PlatformGetFilePath(filename);
return _filepath;
}
}
}
Android:
using System;
using System.IO;
using Xamarin.Forms;
namespace sharedTest
{
public partial class Shared
{
partial void PlatformGetFilePath(string filename)
{
string libraryPath=Environment.GetFolderPath(Environment.SpecialFolder.Personal); ;
_filepath = Path.Combine(libraryPath, filename);
}
}
}
IOs:
using System;
using System.IO;
using Xamarin.Forms;
namespace sharedTest
{
public partial class Shared
{
partial void PlatformGetFilePath(string filename)
{
string documentsPath=Environment.GetFolderPath(Environment.SpecialFolder.Personal);
string libraryPath = Path.Combine(documentsPath, "..", "Library");
_filepath = Path.Combine(libraryPath, filename);
}
}
}