Ben Ninject için çok yeni ve MVC ve Linq ile Ninject 2 çalışıyorum. SqlProductRepository sınıfım var ve tek bilmek istediğim, denetleyicideki Deponit nesnesini enjekte edersem, kurucudaki bağlantıyı iletmenin en iyi yoludur.Nesne ve Bağlantı Dizeleri
public class SqlProductRepository:IProductRepository
{
private Table<Product> productsTable;
public SqlProductRepository(string connectionString)
{
productsTable = (new DataContext(connectionString)).GetTable<Product>();
}
public IQueryable<Product> Products
{
get { return productsTable; }
}
}
Bu benim Deposu'nun enjekte ediyorum benim ProductController sınıftır:
public class ProductsController : Controller
{
private int pageSize = 4;
public int PageSize { get { return pageSize; } set { pageSize = value; } }
IProductRepository _productsRepository;
[Inject]
public ProductsController(IProductRepository productRepository)
{
_productsRepository = productRepository;
}
public ViewResult List(int page)
{
return View(_productsRepository.Products
.Skip((page - 1) * pageSize)
.Take(pageSize)
.ToList()
);
}
}
birileri bu ilgili bana yol misiniz? Bu çok newing olduğunu ve itmek için çalışıyoruz sınıflara bağlama -
kodunuzunew DataContext(connectionString)
: