我在hibernate中创建了一个应用程序,我需要在创建视图中创建一个下拉列表。在MVC中创建下拉列表nhibernate
下拉列表项是通过名为getHobbytype()
的函数获取的,我需要将所选值存储到不同的数据库中。在我创建视图
ViewData["Hobby_type"] =
new SelectList(new Hobby_MasterService().GetHobbyType(),"Hobby_Types");
这:
我已经在我的控制器写了这
@Html.DropDownListFor(Model =>
Model.Hobby_Types,(IEnumerable<SelectListItem>)ViewData["Hobby_type"])
通过这次我能够创建下拉列表,但它给我这个我在下拉列表中查看错误:
没有类型为“IEnumerable”的ViewData项目具有“Hobby_Types”键。
这里是我的GetHobbyType方法:
public IList<String> GetHobbyType()
{
log.Debug("Started");
ISession session = DataAccessLayerHelper.OpenReaderSession();
IList<String> htype = null;
ITransaction transaction = null;
try
{
transaction = session.BeginTransaction();
htype = session.CreateSQLQuery("SELECT Hobby_Types FROM Hobby_Type").List<String>();
session.Flush();
transaction.Commit();
}
catch (Exception ex)
{
if (transaction != null && transaction.IsActive)
transaction.Rollback();
log.Error(ex);
}
log.Debug("End");
return htype;
}
请告诉我,我要去哪里错了。
ViewData [“Type”]我想你的意思是ViewData [“Hobby_Type”] – Iridio 2012-03-20 06:19:23
我更新了问题 – user1274646 2012-03-20 06:52:58
你也可以发布'GetHobbyType'方法吗? – Rippo 2012-03-20 07:46:39