0

ストアドプロシージャがドラッグオフされたdbmlファイルがあります。とプロパティを持つEmployeeModelクラスがあります。getset

メソッドを実装したインターフェースIEmployeeEmployeeRepositoryリポジトリがあります。コードを参照してください。ストアドプロシージャGetRolesには、がありSELECT * FROM ROLEます。

リポジトリで、結果セットをループするにはどうすればよいですか?dbmlデザイナファイルでISingleResultに変更できますか?IMultipleResult

 EmployeeModel.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MvcWebsite.Models
{
    public class EmployeeModel
    {
        public int RoleId { get; set; }
        public string RoleName { get; set; }
        public string Description { get; set; }
        public string TaskMark { get; set; }
        public int RoleFlag { get; set; }
    }
}

 IEmployee:

  using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;
  using MvcWebsite.Models;

  namespace MvcWebsite.DAL
  {
    public interface IEmployees
    {
        IList<EmployeeModel> ListAll();
        // void Save(EmployeeModel employ);
    }
  }

  EmployeeRepository.cs:

  using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Web;
  using MvcWebsite.Models;
  using System.Data.Linq;

  namespace MvcWebsite.DAL
  {
    public class EmployeeRepository:IEmployees
    {

        private DataDataContext _dataContext;

        public EmployeeRepository()
        {
            _dataContext = new DataDataContext();
        }


        public IList<EmployeeModel> ListAll()
        {
            //IMultipleResults result =_dataContext.GetRoleDetails();
            //var Emps = result.GetResult(EmployeeModel);
            List<EmployeeModel> emp = _dataContext.GetRoleDetails();
            // foreach (GetRoleDetailsResult role in Emps)
            // {
            // role.Description=Emps.

            // }
            return Emps.ToList();

        }
     }
 } 

エラー:

エラー1タイプ'System.Collections.Generic.List'を'System.Collections.Generic.IList'に暗黙的に変換できません。明示的な変換が存在します(キャストがありませんか?)C:\ Users \ guhananth \ document \ visual studio 2010 \ Projects \ MVC_SP \ MvcWebsite \ DAL \ EmployeeRepository.cs 44 19 MvcWebsite

4

1 に答える 1

0

通常、次を使用します。

List<EmployeeModel> emp = _dataContext.Employees.ToList();

ここでリポジトリ パターンの Entity Framework 実装について読むことができます: http://blog.gauffin.org/2013/01/repository-pattern-done-right/

于 2013-02-05T06:39:04.823 に答える