我们即将开始一个项目并准备开发环境.我正在寻找使用github和Visual Studio 10的可能性.
那么github有一个Visual Studio Addin吗?
public interface ITaskProvider
{
T GetTask<T>();
}
Run Code Online (Sandbox Code Playgroud)
在下面的ITaskprovider的实现中,正如您所看到的那样,IUserTask和IIdentityTask是从属性而不是构造函数注入的.原因是Windsor在访问时自动实例化运行时注入的属性,因此我不必将所有必须注入的依赖项放在构造函数中.
public class TaskProvider : ITaskProvider
{
public IUserTasks UserTasks { get; set; }
public IIdentityTasks IdentityTasks { get; set; }
public T GetTask<T>()
{
Type type = typeof(T);
if (type == typeof(IUserTasks)) return (T)this.UserTasks;
if (type == typeof(IIdentityTasks)) return (T)this.IdentityTasks;
return default(T);
}
}
Run Code Online (Sandbox Code Playgroud)
在控制器中,我在构造函数中注入ITaskProvider.
public ITaskProvider TaskProvider { get; set; }
public AuctionsController(ITaskProvider taskProvider)
{
TaskProvider = taskProvider;
}
Run Code Online (Sandbox Code Playgroud)
在这里,我称任务提供者及其方法很好.
public ActionResult Index()
{
var userTasks = TaskProvider.GetTask<IUserTasks>();
var user = …Run Code Online (Sandbox Code Playgroud) 在 SqlDateTime.MinValue 是 1753
为什么最后两位数字是53?为什么不四舍五入到 1700?
有人知道这背后的原因吗?:)
编辑:我纠正了这个问题。:)