- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将 Ninject 与 ASP.NET MVC 4 一起使用。我正在使用存储库并希望进行构造函数注入(inject)以将存储库传递给其中一个 Controller 。
这是我的存储库界面:
public interface IRepository where T : TableServiceEntity
{
void Add(T item);
void Delete(T item);
void Update(T item);
IEnumerable Find(params Specification[] specifications);
IEnumerable RetrieveAll();
void SaveChanges();
}
AzureTableStorageRepository
下面是
IRepository
的实现:
public class AzureTableRepository : IRepository where T : TableServiceEntity
{
private readonly string _tableName;
private readonly TableServiceContext _dataContext;
private CloudStorageAccount _storageAccount;
private CloudTableClient _tableClient;
public AzureTableRepository(string tableName)
{
// Create an instance of a Windows Azure Storage account
_storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["StorageConnectionString"].ConnectionString);
_tableClient = _storageAccount.CreateCloudTableClient();
_tableClient.CreateTableIfNotExist(tableName);
_dataContext = _tableClient.GetDataServiceContext();
_tableName = tableName;
}
public class CategoriesController : ApiController
{
static IRepository _repository;
public CategoriesController(IRepository repository)
{
if (repository == null)
{
throw new ArgumentNullException("repository");
}
_repository = repository;
}
///
/// Ninject module to handle dependency injection of repositories
///
public class RepositoryNinjectModule : NinjectModule
{
public override void Load()
{
Bind<>>().To<>>();
}
}
NinjectWebCommon.cs
中完成。
///
/// Creates the kernel that will manage your application.
///
/// The created kernel.
private static IKernel CreateKernel()
{
var kernel = new StandardKernel();
kernel.Bind<>>().ToMethod(ctx => () => new Bootstrapper().Kernel);
kernel.Bind().To();
RegisterServices(kernel);
return kernel;
}
///
/// Load your modules or register your services here!
///
/// The kernel.
private static void RegisterServices(IKernel kernel)
{
// Load the module that contains the binding
kernel.Load(new RepositoryNinjectModule());
// Set resolver needed to use Ninject with MVC4 Web API
GlobalConfiguration.Configuration.DependencyResolver = new NinjectResolver(kernel);
}
DependencyResolver
创建是因为 Ninject 的
DependencyResolver
hoàn thành
System.Web.Mvc.IDependencyResolver
这不能分配给
GlobalConfiguration.Configuration
WebApi 应用程序。
AzureTableRepository
的构造函数中注入(inject) tableName 参数.
1 Câu trả lời
我会使用 WithConstructorArgument()
方法如...
Bind<>>().To<>>()
.WithConstructorArgument("tableName", "categories");
关于dependency-injection - 忍者: Constructor parameter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13893268/
Nếu tôi có tệp Depends với các mục debian/control và Build-Depends. Làm sao tôi có thể cài đặt cả hai bộ phụ thuộc? Hiện tại tôi đang tạo một dependency trong Build-Depends bằng lệnh sau
Tôi đã xem tệp Cargo.toml cho mẫu substrate-node và nhận thấy rằng đối với hầu hết các thùng, các phụ thuộc trông như thế này: [dependencies.grandpa] package = 'sc-finalit
Tôi có một dự án Maven trong Netbeans 7.1 IDE. Tôi muốn thêm cùng một dependency vào Dependencies và Test Dependencies. Thêm vào một dependency sẽ xóa dependency khỏi dependency kia.
Tôi đang cố gắng giải quyết vấn đề được mô tả ở đây: http://www.jayway.com/2013/04/12/solving-asm-conflicts-after-upgrading-to-groovy-2-1
Tôi đã nghiên cứu vấn đề này nhưng không thể tìm ra sự đồng thuận. Nếu "A phụ thuộc vào B", thuật ngữ "phụ thuộc" đề cập đến: mối quan hệ giữa BA và B. Thuật ngữ này có ý nghĩa khác nhau trong các lĩnh vực khác nhau của công nghệ máy tính không? Câu trả lời tốt nhất là B, đó là sự phụ thuộc. Bạn có thể bắt đầu bằng "B
WebLogic 10.3.6Java 1.6 Vì vậy, tôi đang gặp sự cố với XML khi sử dụng Eclipse. Mọi việc diễn ra tốt đẹp cho đến khi tôi đi nghỉ cách đây 7 ngày. Trên thực tế, trước khi tôi rời đi, tôi đã quay lại phiên bản cũ hơn vì tôi đang làm một số việc không quan trọng.
Trước khi hỏi câu hỏi này, tôi muốn nói rằng câu hỏi trong stackoverflow này rất giống với câu hỏi của tôi, nhưng khái niệm vẫn chưa rõ ràng và rất khó hiểu. Tôi đang cố gắng tìm hiểu về Nguyên lý đảo ngược phụ thuộc nhưng tôi không thể hiểu đầy đủ về nó? Dưới đây là hai điểm mà DIP đã nói: A. Hig
Thật khó để biết câu hỏi ở đây là gì. Câu hỏi này mơ hồ, không đầy đủ, quá rộng hoặc mang tính tu từ và không thể trả lời hợp lý theo hình thức hiện tại. Để được trợ giúp làm rõ vấn đề này để bạn có thể mở lại, hãy truy cập trung tâm trợ giúp.
Tôi đang cố gắng tạo một gói bằng apache maven. Khi tôi chạy lệnh mvn clean install, tôi nhận được lỗi sau: 'dependency.dependency.version' không phải là phiên bản hiện tại
Trong Chương 9 của Ocaml Thế giới thực, đây là về các hàm tử: Tiêm phụ thuộc Thực hiện các triển khai của một số thành phần
Tôi đã xây dựng một thứ giống như mẫu/quy trình làm việc cơ bản để tạo trang web, chủ yếu sử dụng Grunt. Một phần của mẫu này là thư viện phát hiện tính năng Modernizr, một trong những tác vụ Grunt của tôi phụ thuộc vào thư viện này. Hiện tại tôi chỉ lưu trữ sự phụ thuộc đó trong b của tôi
Tôi có một dự án Python với các phụ thuộc cố định. Đã phát hiện lỗi trong gói của tôi do lỗi ở các phần phụ thuộc của bên thứ ba. Phụ thuộc này đã phát hành bản vá để sửa lỗi này. Tuy nhiên, theo phiên bản ngữ nghĩa, liệu có thể sửa từng phiên bản vá của một phụ thuộc không?
Sử dụng plugin io.spring.dependency-management, một số phiên bản phụ thuộc của tôi được khấu trừ khỏi các phụ thuộc khác với id("io.spring.dependency-management") phiên bản
Tôi có hai bảng này "bảng nhân viên, bảng phụ thuộc" Bảng nhân viên có "ID, employee_id, employee_name" Bảng phụ thuộc có "ID, employee_id, dependent_name, relations
Tôi đang làm việc trên một dự án java mavenised trong Eclipse, trong đó một số mô-đun không thể xây dựng và đưa ra lỗi từ tệp pom: Lỗi xây dựng dự án: 'dependencies.d
Tôi có một dự án maven với nhiều mô-đun. Trong Eclipse (Juno, với m2e) thì dường như nó biên dịch tốt. Nhưng khi tôi cài đặt maven trên một trong các mô-đun, bản dựng bị lỗi ngay lập tức. Pom cha mẹ: com
Tôi đã tạo một dự án maven bằng eclipse juno và chỉnh sửa tệp pom. Khi tôi chạy tệp pom bằng dấu nhắc lệnh thông qua "mvn clean install", tôi nhận được lỗi này. [LỖI] T
đóng cửa. Câu hỏi này dựa trên ý kiến. Hiện tại không chấp nhận câu trả lời. Bạn có muốn cải thiện câu hỏi này không? Cập nhật câu hỏi để bạn có thể trả lời bằng thông tin và trích dẫn bằng cách chỉnh sửa bài đăng này. . Đã đóng cửa cách đây 6 năm. Ngẫu hứng
Có vẻ như việc bao gồm các phụ thuộc trực tiếp với phạm vi được cung cấp được hiểu rõ. Có vẻ như nó cũng bao gồm các phụ thuộc gián tiếp với thời gian chạy. Phạm vi này cũng có thể đạt được một cách dễ dàng. Nhưng làm sao tôi có thể bao gồm sự phụ thuộc ở hai cấp độ gián tiếp? Ví dụ: A --> B --> C
Tôi gặp tình huống sau: Tôi muốn sử dụng một trong các dự án của mình (được lưu trữ trên bintray.com) trong một dự án khác. Tôi đã thiết lập kho lưu trữ Maven, tải lên các tệp Artifact và pom, sau đó có thể tải lên bin bằng cách sử dụng
Tôi là một lập trình viên xuất sắc, rất giỏi!