2010-06-10 92 views
0

我已经看遍了所有,我无法弄清楚为什么我的viewmodel没有得到填充。为什么我的viewmodel属性没有填充

我有这样的代码:

_followersRepo = new NotesDomainContext(); 
_followersRepo.Load(_followersRepo.GetFollowersQuery(), lo => { 
_followers = new ObservableCollection(_followersRepo.aspnet_Users); 
    }, null); 

_followingRepo = new NotesDomainContext(); 
_followingRepo.Load(_followingRepo.GetUsersFollowedByIDQuery(CurrentUserId), lo => { 
_following = new ObservableCollection(_followingRepo.aspnet_Users); 
}, null); 

_fullUserRepo = new NotesDomainContext(); 
_fullUserRepo.Load(_fullUserRepo.GetFullUserByIDQuery(CurrentUserId), lo => { 
_currentUser = _fullUserRepo.FullUsers.SingleOrDefault(); 
}, null); 

但是,当我调试,没有数据加载到关注,继和CurrentUser对象。我知道应该返回数据,因为我试图在我的应用中实现MVVM模式,并没有改变域服务。另外我可以调试CurrentUserId有一个值。没有一个变量有价值,回购也没有。

当我尝试查看_followersRepo.aspnet_Users的值时,我只是得到“枚举没有结果”这是怎么回事?

必须有关于我真的没有得到的DomainService查询一些关键的逻辑,所以我会非常感激,如果如果该行被用来加载有人会睁开眼睛

+0

你最终得到它吗? – Amsakanna 2010-07-08 09:35:59

+0

@Veer - 是啊,你有答案:) THX一堆 – Jakob 2010-07-08 09:59:13

回答

2

_followersRepo.Load(_followersRepo.GetUsersFollowingIDQuery(CurrentUserId));

数据放入_followersRepo中,它应该在实例化Followers之前。

更新

试试这个:

_followersRepo = new NotesDomainContext(); 
var filteredFollowers = _followersRepo.GetFollowersQuery(); // That should return you an IQueryable<aspnet_User> 
_followers = new ObservableCollection(filteredFollowers); // An ObservableCollection is created out of the IQueryable<aspnet_User> 

无需再创建_followersRepo。使用相同的实例创建其他集合也

+0

我试图 \t \t \t \t _followersRepo.Load(_followersRepo.GetUsersFollowingIDQuery(CurrentUserId)); \t \t \t \t关注者= new ObservableCollection (_followersRepo.aspnet_Users); \t \t \t \t _followingRepo.Load(_followingRepo.GetUsersFollowedByIDQuery(CurrentUserId)); \t \t \t \t正在关注=新的ObservableCollection (_followingRepo.aspnet_Users); \t \t \t \t _fullUserRepo.Load(_fullUserRepo.GetFullUserByIDQuery(CurrentUserId)); \t \t \t \t CurrentUser = _fullUserRepo.FullUsers.SingleOrDefault(); 但这似乎并不奏效。追随者是否被实例化? – Jakob 2010-06-10 12:36:43

+0

请发布任何Load方法的代码。否则,检查该方法是否将一些数据加载到_followersRepo.aspnet_users中。 – Amsakanna 2010-06-10 12:56:13

+0

我查过了,他们没有。 公共的IQueryable GetUsersFollowingID(GUID的userid) \t \t { \t \t \t返回this.DataContext.Followers.Where(F => f.FollowedId ==用户ID)。选择(F => F。aspnet_User1); \t \t} – Jakob 2010-06-10 16:59:19

相关问题