[Bug] `ToPropertyUnsafe` (and Possibly Other Unsafe Methods) Always Fails
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 66/100
Direzione di ricerca
Inizia da src/ReactiveUI.Binding.Shared/Fallback/RuntimePropertyRaiser.cs, soprattutto dalle righe indicate 152–157 e dal percorso di eccezione alle righe 108–114. Verifica come il runtime risolve IReactiveObject e IReactiveObjectExtensions tra i rispettivi assembly, quindi riproduci il problema con l’esempio MVVM di Avalonia usando ReactiveUI 26.0.1. Il lavoro è concluso quando ToPropertyUnsafe viene eseguito senza generare eccezioni in questa riproduzione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Prerequisites
- I have searched this repository's open and closed issues for duplicates.
- I am using the latest stable release.
What happens
ToPropertyUnsafe always fails, because this code is wrong:
IReactiveObject is defined in the ReactiveUI.Core assembly, while IReactiveObjectExtensions is defined the ReactiveUI assembly, so the code above always fails, and ToPropertyUnsafe ends up throwing this exception:
What you expected instead
No exception thrown.
Minimal reproduction
In a fresh Avalonia MVVM app with ReactiveUI, add the following lines to the MainViewModel:
private readonly ObservableAsPropertyHelper<string> _valueOaph;
public MainViewModel()
{
_valueOaph = Observable.Return("").ToPropertyUnsafe(this, x => x.Value)
}
public string Value => _valueOaph.Value;
Steps to reproduce
- Create an Avalonia MVVM app with Reactive UI:
dotnet new avalonia.mvvm -m ReactiveUI - Add the lines mentioned in Minimal Reproduction
dotnet run
Exception and stack trace
Package and version
ReactiveUI 26.0.1
UI framework
Avalonia
Operating system
Windows
Target framework
net10.0
Device and OS version
No response
IDE
No response
Did this work in an earlier version?
No response
Workaround
No response
Additional information
No response
- Lingua principale
- C#
- Stelle
- 9
- Fork
- 4
- Merge medio
- 7h 7m
- PR unite (30g)
- 75
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di reactiveui/ReactiveUI.Binding.SourceGenerators
-
Dependency DashboardAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 30/100
reactiveui/ReactiveUI.Binding.SourceGenerators#3 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di reactiveui/ReactiveUI.Binding.SourceGenerators
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
I maintainer di solito rispondono entro 1 giorno
-
Attention: a throwing permission check on one contributor fails the whole aggregation requestApertaready-for-agent size:S status:todo
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
elsa-workflows/elsa-foundation#2830 ·
I maintainer di solito rispondono entro 1 giorno
-
Review - Maintainer WG-Maintainers-Build
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
PowerShell/PowerShell#28220 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
area: docs eco: dotnet good first issue help wanted lane: free-agent roadmap size: XS type: docs
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 72/100
arminazimi/evergreen#377 ·
I maintainer di solito rispondono entro 1 giorno
-
documentation good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno