Ошибка совпадения неоднозначных маршрутов MAUI в PopAsync()C#

Место общения программистов C#
Ответить
Anonymous
 Ошибка совпадения неоднозначных маршрутов MAUI в PopAsync()

Сообщение Anonymous »

Я получаю сообщение об ошибке при попытке вернуться с отправленной страницы
System.ArgumentException: 'Ambiguous routes matched for: //D_FAULT_TabBar14/IMPL_BooksPage/BooksPage/D_FAULT_ModalReader16 matches found: //D_FAULT_TabBar14/IMPL_BooksPage/BooksPage/D_FAULT_ModalReader16,//D_FAULT_TabBar14/IMPL_BooksPage/BooksPage/D_FAULT_ModalReader16 (Parameter 'uri')'

Я использую навигацию Shell


......

Из BooksPage я перехожу в Reader вот так
ModalReader mr = new ModalReader(book);
await Shell.Current.Navigation.PushAsync(mr, true);


из Reader в закладки
BookmarksModal bm = new BookmarksModal(_viewModel.Book?.Title ?? "usaxelo", _viewModel.Sarchevi, (int x) =>
{
Carousel.ScrollTo(x, animate: false);
});

await Shell.Current.Navigation.PushAsync(bm, true);

и когда я пытаюсь выполнить удаление, выдается одно исключение
await Shell.Current.Navigation.PopAsync();
что я делаю не так?
маршруты и зависимости зарегистрированы, но ошибка все равно
public AppShell()
{
InitializeComponent();

Routing.RegisterRoute(nameof(Authenticator), typeof(Authenticator));
Routing.RegisterRoute(nameof(MainPage), typeof(MainPage));
Routing.RegisterRoute(nameof(LoginPage), typeof(LoginPage));
Routing.RegisterRoute(nameof(BooksPage), typeof(BooksPage));
//Routing.RegisterRoute(nameof(ReaderPage), typeof(ReaderPage));
//Routing.RegisterRoute(nameof(ProfilePage), typeof(ProfilePage));
//Routing.RegisterRoute("books/modalReader", typeof(ModalReader));
//Routing.RegisterRoute("books/searchPage", typeof(BooksSeachPage));
//Routing.RegisterRoute("books/reader/bookmarks", typeof(BookmarksModal));
//Routing.RegisterRoute("books/reader/font", typeof(FontModal));
}

builder.Services.AddTransient();

builder.Services.AddSingleton();
builder.Services.AddSingleton();
builder.Services.AddSingleton();
builder.Services.AddSingleton();
//builder.Services.AddTransient();
//builder.Services.AddTransient();
//builder.Services.AddTransient();
//builder.Services.AddTransient();
//builder.Services.AddTransient();



Подробнее здесь: https://stackoverflow.com/questions/788 ... n-popasync
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»