项目有不同的业务层。我专注于两层Controller和Repository Layer。
Controller具有逻辑,它为主数据库提供了更改数据的方向。通过制作存储过程实现每个逻辑。
我想为Employee Name创建自动完成功能通过从Employee表获取数据,但是通过存储过程。我创建了一个SP。显然它错了,但看看它
ALTER procedure [dbo].[EmployeeSuggestion]
@FirstName Varchar(50)
As
Begin
Select FirstName from Employee WHERE
-- FirstName = @FirstName and
(ISNULL(@FirstName,'')='' OR Employee.FirstName LIKE '%'+@FirstName+'%')
end
--exec EmployeeSuggestion 'shaili'
我的LeaveModel定义如下
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//using System.Threading.Tasks;
using System.ComponentModel.DataAnnotations;
using Synoverge.Component.ExcelHelper;
namespace Synoverge.InternalApps.Model.Master
{
public class LeaveModel: BaseModel
{
//public LeaveModel()
//{
// Suggestion = new List<LeaveModel>();
//}
//List<LeaveModel> Suggestion { get; set; }
public String EmployeeName { get; set; }
public string ReportingManagerName { get; set; }
public int Id { get; set; }
public int EmoplyeeId { get; set; }
public int ReportingManagerId { get; set; }
public DateTime LeaveFromDate { get; set; }
public DateTime LeaveToDate { get; set; }
public string Remark { get; set; }
}
}
我的LeaveController
using System.Linq;
using System.Web.Mvc;
using Synoverge.InternalApps.Web.Common;
using Synoverge.InternalApps.Common;
namespace Synoverge.InternalApps.Web.Controllers
{
public partial class MasterController : BaseController
{
//
// GET: /Leave/
public ActionResult LeaveDetail()
{
LeaveModel leaveModel = new LeaveModel();
//leaveModel.EmployeeName = masterRepository.Suggestion();
return View(leaveModel);
}
}
}
我的MasterRepository
using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Practices.EnterpriseLibrary.Data;
using System.Data.Common;
using System.Data;
using Synoverge.InternalApps.Model;
using Synoverge.InternalApps.Model.Master;
using Synoverge.InternalApps.Model.ExcelExport;
namespace Synoverge.InternalApps.Repository
{
public class MasterRepository : BaseRepository
{
#region Leave
//public List<LeaveModel> Suggestion()
//{
// List<LeaveModel> SugInfo = new List<LeaveModel>();
// SugInfo = this.DB.ExecuteSprocAccessor<LeaveModel>("dbo.[EmployeeSuggestion]").ToList();
// return SugInfo;
//}
#endregion
我想你们会明白这个应用程序现在如何运作。每个主要的东西都在Master存储库中。现在我试图在它上面创建自动完成,但我也不成功,我也不知道如何做到这一点。我搜索网,他们都用控制器方法教我,没有存储过程。请帮帮我,我想要一个解决方案。应该如何存储过程以及控制器和MasterRepository中的代码。我也想知道创建不同业务层的逻辑。它是否会改变我们应用的逻辑。