我有这个用于上传文件的淘汰js脚本
当用户在上传控件中选择文件时,此代码会触发上载事件
Upload.html
$(function() {
var viewModel = {
filename: ko.observable(""),
};
ko.applyBindings(viewModel);
});
<form>
<input id="upload" name="upload"
data-bind="fileUpload: { property: 'filename', url: 'http://localhost/api/upload/PostFormData' }"
type="file" />
<button id="submitUpload">Upload</button>
</form>
Run Code Online (Sandbox Code Playgroud)
FileUpload.js
ko.bindingHandlers.fileUpload = {
init: function (element, valueAccessor) {
$(element).after('<div class="progress"><div class="bar"></div><div class="percent">0%</div></div><div class="progressError"></div>');
},
update: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
var options = ko.utils.unwrapObservable(valueAccessor()),
property = ko.utils.unwrapObservable(options.property),
url = ko.utils.unwrapObservable(options.url);
if (property && url) {
$(element).change(function() {
if (element.files.length) {
var $this = $(this),
fileName = $this.val(); …Run Code Online (Sandbox Code Playgroud) 我试图按照这个博客来实现与Unity的依赖注入,但我在boostrapper.cs中遇到错误(我使用Unity.MVC4库).有人能指出我在这里缺少什么吗?
错误:IoCContainer似乎没有实现Microsoft.Practices.ServiceLocation.IServiceLocator.参数名称:commonServiceLocator
public static class Bootstrapper
{
public static IUnityContainer Initialise()
{
var container = BuildUnityContainer();
DependencyResolver.SetResolver(new UnityDependencyResolver(container));
// this throws "does not appear to implement Microsoft.Practices.ServiceLocation.IServiceLocator.... error"
DependencyResolver.SetResolver(new IoCContainer(container));
return container;
}
....
}
Run Code Online (Sandbox Code Playgroud)
这是IoCContainer类
public class ScopeContainer : IDependencyScope
{
protected IUnityContainer container;
public ScopeContainer(IUnityContainer container)
{
if (container == null)
{
throw new ArgumentNullException("container");
}
this.container = container;
}
public object GetService(Type serviceType)
{
if (container.IsRegistered(serviceType))
{
return container.Resolve(serviceType);
}
else
{
return null;
} …Run Code Online (Sandbox Code Playgroud) asp.net-mvc dependency-injection unity-container asp.net-mvc-4 asp.net-web-api