aracılığıyla kullanıcı denetiminin VM'sine geçirin Bir MVVM Light WPF uygulamasında Entity Framework 6 kullanıyorum. Uygulamanın DbContext
değerini, kullanıcı denetiminin MainWindow.xaml
modelinin görünüm modeline iletmek istiyorum.DB içeriğini, XAML
kullanıcı denetiminin görünüm modeli SearchEmployeeViewModel.cs
olup aşağıdaki kurucu sahiptir:
public SearchEmployeeViewModel(MyEntities context)
{
Context = context;
// Other code...
}
MainWindow.xaml
bu kullanarak kullanıcı kontrolü beyan ve bu benim girişimi gidebiliriz kadarıyla var:
<usercontrol:SearchEmployeeControl>
<ObjectDataProvider ObjectType="{x:Type data:MyEntities}">
<ObjectDataProvider.ConstructorParameters>
<data:MyEntities >
</data:MyEntities>
</ObjectDataProvider.ConstructorParameters>
</ObjectDataProvider>
</usercontrol:SearchEmployeeControl>
Uygulamanın en DbContext
MainViewModel.cs
yapıcı bu şekilde başlatılır:
_context = new MyEntities();
Bu EF DbContext
'u SearchEmployeeViewModel.cs
yapıcısına MainWindow.xaml
aracılığıyla nasıl iletirim? Ben buna benzer bir şey yapmaya çalışıyor, ancak tüm veriler bağlam nesnesi geçiyorum: Where to create parametrized ViewModel?
Güncelleme: kullanıcı denetimi için EF DBContext geçmesine çalışıyorum.
Bence kurucunuzdaki diğer kodunuz başlatılan bağlamı kullanmıyorsa, bu sorunun özellik enjeksiyonu cevabı sizin sorunuz için de geçerli olacaktır. –
Teşekkürler, @GordonAllocman. Bu cevabı bile anlamadım! – Alex
Sözdizimi bunun için ne olurdu, @GordonAllocman? MainWindow.xaml içinde, bu kullanıcı denetimi bildiriminin içinde var: ' '. 'Bağlam' özelliğini herhangi bir şeye bağlamama izin vermez. Peki veri nesnesine nasıl aktarırım? –
Alex