我想知道我的选择是什么用于复制SQL Server数据库.如果这是重复,我将删除我的问题,但在使用搜索时找不到答案.
这是我已经尝试过的:
- 将数据库写入sql脚本.
当我这样做时,我似乎总是遇到一个问题,我必须手动调整东西.像密钥或整理冲突的问题.
这似乎也很慢.我的上一个脚本文件是1.5Mb,但运行时间为1小时.遇到90%的错误也很烦人.
我主要使用sql脚本让它工作,但感觉我浪费了很多时间来修复小错误并等待sql执行.
- 在Microsoft SQL Server Management Studio上使用导出功能
如果我是正确的,则不会复制存储过程,视图和/或键.
-Detach/Attach
认为在只有一个数据库的共享主机上这是不可能的,这是正确的吗?我在尝试这个时遇到了许可问题.
这就是我尝试过的一切.
提前致谢,
Pickels
我想知道我应该测试什么以及如何测试IRepository.
目前我在我的域中创建了一个MemoryRepository,我正在使用虚假数据进行测试.我不确定这是否正确.首先创建一些数据然后测试以查看存储库是否正确返回数据,感觉有点奇怪.
这就是我的MemoryRepository的样子:
public class MemoryRepositoryUser : IRepositoryUser
{
List<User> fakeUsers;
public MemoryRepositoryUser(List<User> fakeUsers)
{
this.fakeUsers = fakeUsers;
}
public IEnumerable<User> GetAll()
{
return fakeUsers;
}
public User GetById(string id)
{
return GetAll().Where(u => u.Username == id).Single();
}
}
Run Code Online (Sandbox Code Playgroud)
这些是我写的一些测试:
[TestFixture]
class TestMemoryRepositoryUser
{
private MemoryRepositoryUser repository;
public TestMemoryRepositoryUser(){
repository = new MemoryRepositoryUser(FakeData.GetFakeUsers());
}
[Test]
public void Get_All_Users()
{
var Users = repository.GetAll();
Assert.IsNotNull(Users);
Assert.IsInstanceOf(typeof(IEnumerable<User>), Users);
Assert.AreEqual(3, Users.Count());
}
[Test]
public void Get_User_By_ID()
{
var Username = "Bob";
var User …Run Code Online (Sandbox Code Playgroud) 我想知道在httpcontext.current.items而不是httpcontext.current.user中存储自定义Principal是否有任何缺点.我知道你需要为每个请求设置它,但我也必须使用httpcontext.current.user.
提前致谢,
Pickels
我有一个处理数据的类。其他类可以给它它们的值,数据类将填充它们。
它看起来像这样:
class Data
constructor : ->
@products = null
populateProducts : (callback)=>
ajaxCall (data)=>
@products = data
callback()
allProducts : (list)=>
if @products?
list = @products
else
@populateProducts => allProducts list
Run Code Online (Sandbox Code Playgroud)
我面临的问题是我添加的每个方法都必须检查产品是否存在。所以我正在研究使这部分代码可重用的方法。
我尝试的一种方法如下:
productsCheck : (callback)=>
if @products?
callback()
else
@populateProducts => products callback
Run Code Online (Sandbox Code Playgroud)
使用这种方法我可以简化所有产品:
allProducts : (list)=>
@productsCheck => list = @products
Run Code Online (Sandbox Code Playgroud)
最后,我正在寻找能够实现以下功能的技术:“如果产品不存在,则从数据库中填充它们”。我可能在想这可能是一种已知的模式,所以如果是这种情况,有关它的信息也值得赞赏。
我正在尝试创建一个上传组件,但是当onchange事件触发时我的视图没有更新.我看到file.names被记录但没有发生任何事情.
我正在使用一个指令,因为我希望能够将我的包放入一个项目,然后启用文件上传器<upload url='/fileserver'></upload>.
控制器:
var controllers = {
UploadCtrl: function ($scope) {
$scope.images = [];
$scope.files = [];
$scope.upload = function (element) {
$scope.$apply(function ($scope) {
$scope.files = element.files;
});
};
$scope.$watch('files', function () {
for (var i = 0; i < $scope.files.length; i += 1) {
var current = $scope.files[i];
var reader = new FileReader();
reader.onload = (function (file) {
return function (env) {
console.log(file.name);
$scope.images.push({ name: file.name, src: env.target.result });
}
}(current));
reader.readAsDataURL(current);
}
}, true); …Run Code Online (Sandbox Code Playgroud) JS
angular.module('my-app', []).controller('Ctrl', function ($scope, $timeout) {
var t;
$scope.click = function () {
t = $timeout(function () {
alert('click');
}, 1000);
};
$scope.dblclick = function () {
$timeout.cancel(t);
alert('dblclick');
};
});
Run Code Online (Sandbox Code Playgroud)
模板
<div ng-app='my-app' ng-controller='Ctrl'>
<button ng-click='click()' ng-dblclick='dblclick()'>push</button>
</div>
Run Code Online (Sandbox Code Playgroud)
的jsfiddle
javascript ×3
angularjs ×2
asp.net-mvc ×2
.net ×1
asp.net ×1
c# ×1
coffeescript ×1
sql ×1
sql-server ×1
tdd ×1
testing ×1