EntitySet 'sproc_Forums_GetForumGroupByID' не определен в EntityContainer - PullRequest
3 голосов
/ 09 февраля 2012

Я получаю эту ошибку после того, как импортирую хранимую процедуру, затем создаю сложный тип и называю функцию import "sproc_Forums_GetForumGroupByID", эта процедура получает один форум из ObjectDataSource после выбора GridView. Я получаю сообщение об ошибке в строке ExecuteReader. У меня уже есть одна хранимая процедура, работающая со структурой сущностей, и она отлично работает. Я не понимаю, что происходит, когда я начал вторую процедуру

EntitySet 'sproc_Forums_GetForumGroupByID' не определен в EntityContainer 'CMSEntities'. Рядом с простым идентификатором, строка 1, столбец 13.

public class Forums
{
    public Forum GetForumGroup(int ForumGroupID)
    {
        using (EntityConnection conn = new EntityConnection("name=CMSEntities"))
        {
            conn.Open();
            EntityCommand cmd = new EntityCommand("CMSEntities.sproc_Forums_GetForumGroupByID", conn);
                cmd.Parameters.AddWithValue("ForumGroupID", ForumGroupID);


                using (EntityDataReader reader = cmd.ExecuteReader(CommandBehavior.SingleRow))
                {
                    /*
                    Forum forum = null;
                    int forumID = (int)reader[0];
                    string addedBy = reader[1].ToString();
                    DateTime addedDate = (DateTime)reader[2];
                    string title = reader[3].ToString();
                    string updatedBy = reader[4].ToString();
                    DateTime updatedDate = (DateTime)reader[5];
                    bool active = (bool)reader[6];

                    forum = new Forum(forumID, addedBy, addedDate, title, "", 0, 0, false, "",
                        updatedBy, updatedDate, active, "", 0, "", DateTime.Now, "");
                    return forum;*/
                }               

                return null;

        }   
    }
}

1 Ответ

0 голосов
/ 09 февраля 2012
  1. Убедитесь, что sp существует в базе данных.
  2. Обновление модели объекта.
  3. используйте функцию импорта в браузере модели для импорта хранимой процедуры.

Как личность, я обычно использую свои хранимые процедуры следующим образом. ИМО проще, чем с помощью EntityDataReader.

public Forum GetForumGroup(int forumGroupID)     
{
    using(CMSEntities cmsContext = new CMSEntities())
    {
       var forum = cmsContext.sproc_Forums_GetForumGroupByID(forumGroupID);
       //...
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...