Ошибка Linq-SQL в проекте Silverlight - PullRequest
0 голосов
/ 21 марта 2012

Ниже приведен мой код, использующий LINQ to SQL, при выполнении я получаю сообщение об ошибке, в котором говорится: «Ссылка на объект не установлена ​​для экземпляра объекта». Я присоединился к 3 таблицам Users, UsersinRoles и Roles. Я использую соединение для извлечения данных из 2 таблиц, используя таблицу мостов, я получаю ссылку на объект.

 public class Users : CollectionFactoryBase
{
    public Users()
    {
        this.Summary = "Collection of Users";
    }
    public override Collection MakeCollection(CollectionRequestContext context)
    {
        UsersDataContext m_dataContext = new UsersDataContext();

        const int maxItems_c = 150;
        try
        {
           // string sessionvalue = HttpContext.Current.Session["SessionKey"] as string;

            var Users = from p in m_dataContext.aspnet_Users
                        join t in m_dataContext.aspnet_UsersInRoles on
                        p.UserId equals t.UserId
                        join r in m_dataContext.aspnet_Roles on
                        t.RoleId equals r.RoleId 

                        select new
                        {
                            UserName = p.UserName,
                            UserId   = p.UserId,
                            RoleId   = r.RoleId,
                            RoleName = r.RoleName,
                           userid = t.UserId,
                           roleid = t.RoleId


                        };


            Collection collection = new Collection();
            collection.Name = "Users";
            foreach (var user in Users.Take(maxItems_c) )
            {
                collection.AddItem(user.UserName, user.RoleName, null, null, null, null, null);
            }
            return collection;
        }
        catch (Exception ex)
        {

            return ErrorCollection.FromException(ex);
        }
    }

}

}

1 Ответ

0 голосов
/ 21 марта 2012

Тебе не кажется, что последнее утверждение должно быть первым?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...