我有一个以32/64位构建的项目,并具有相应的32/64位依赖项.我希望能够切换配置并使用正确的引用,但我不知道如何告诉Visual Studio使用适当的体系结构依赖.
也许我正在以错误的方式解决这个问题,但我希望能够在配置下拉列表中切换x86和x64,并使引用的DLL成为正确的位数.
我正在嘲笑AngularJS单元测试的服务.我正在使用该$provide服务用被模拟的服务替换"真正的"服务(这是一个可用的plunker脚本):
describe('My Controller', function () {
var $scope;
var $provide;
beforeEach(angular.mock.module('myApp'));
beforeEach(angular.mock.module(function (_$provide_) {
$provide = _$provide_;
}));
beforeEach(angular.mock.inject(function($rootScope, $controller, $q){
var mockMyService = {
getAll : function() {
var deferred = $q.defer();
deferred.resolve([
{ itemText: "Foo" },
{ itemText: "Bar" }
]);
return deferred.promise;
}
};
$provide.value('myService', mockMyService);
$scope = $rootScope.$new();
$controller('MyCtrl', { $scope: $scope });
$rootScope.$apply();
}));
it('Has two items defined', function () {
expect($scope.items.length).toEqual(2);
});
});
Run Code Online (Sandbox Code Playgroud)
这很好用.但是,我不喜欢这样一个事实,即我只使用一个angular.mock.module函数来提供对$provide服务的引用,然后在 …
如何阻止ReSharper格式化:
define(['Spec'], function (Spec) {
});
Run Code Online (Sandbox Code Playgroud)
进入这个:
define(['Spec'],
function(Spec) {
});
Run Code Online (Sandbox Code Playgroud)
我已经尝试了各种设置组合,但尚未找到合适的设置.
我一直在研究Visual Studio 2013中Web性能测试插件的一些问题.当添加对必要dll的引用时(例如Microsoft.VisualStudio.QualityTools.WebTestFramework.dll),我注意到"Add References"窗口中有相同dll的多个条目.在我的系统上,我有五个选择WebTestFramework.
我看到的其中一些来自早期版本的Visual Studio,它们也安装在我的机器上.但是,我看到有些是重复的,例如:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ReferenceAssemblies\WebTestFramework.dll
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\PublicAssemblies\WebTestFramework.dll
我比较了这两个文件的哈希值,它们是相同的.那么,为什么它们会在我的VS 2013(v12.0)安装中出现两次?为什么同时存在'ReferenceAssemblies'和'PublicAssemblies'文件夹?
我有一些代码,在新线程上抛出异常,我需要在主线程上确认和处理.为了实现这一点,我通过使用保存抛出异常的字段来共享线程之间的状态.
我的问题是在检查null时是否需要使用锁,因为我在以下代码示例中进行操作?
public class MyClass
{
readonly object _exceptionLock = new object();
Exception _exception;
public MyClass()
{
Task.Run(() =>
{
while (CheckIsExceptionNull())
{
// This conditional will return true if 'something has gone wrong'.
if(CheckIfMyCodeHasGoneWrong())
{
lock(_exceptionLock)
{
_exception = new GoneWrongException();
}
}
}
});
}
bool CheckIsExceptionNull() // Is this method actually necessary?
{
lock (_exceptionLock)
{
return _exception == null;
}
}
// This method gets fired periodically on the Main Thread.
void RethrowExceptionsOnMainThread()
{ …Run Code Online (Sandbox Code Playgroud) 我对TeamCity有一个反复出现的问题.在我的公司,我已经安装了TeamCity三次,并成功将它们连接到某种SVN-repo.
但过了一段时间我总是得到同样的错误,无法访问localhost,即TeamCity的登录页面(我启动浏览器,它找不到localhost).
我试图找到一个解决方案,但没有成功,我也试图让TeamCity停止工作(找出造成问题的原因),但也没有成功.
棘手的部分是,我不知道它为什么会发生,我不知道如何解决它.它突然发生了.日志没有告诉我任何事情,所有服务/端口/等都正常工作.它只是突然失去了它的起始连接.
我在Win 2008 Server R2上运行TeamCity.那么,有没有人有线索或一些想法可以帮助我解决这个问题?
问题摘要:
当我写出来时,我开始意识到有很多细节,所以这里是标题:
在写这篇文章时,我也意识到我要求做的事情真的很复杂,可能根本就不可能......
细节:
我和使用SVN存储库的人员一起工作.我们中的许多人已经开始使用Git SVN,现在正在收获本地使用Git的好处,随意分支,必要时合并到我们的本地Masters,然后再回到SVN.这很好用(尽管我意识到我们并没有从纯粹的Git解决方案中获得所有好处).
我最近开始使用私有BitBucket Git存储库作为Master的远程控制器,因此我可以轻松地将代码传输到其他地方或从其他地方传输代码.工作流程如下:
好的,有几个步骤,但它适合我.但是,我的一些同事想要开始做同样的事情.更重要的是,我们希望能够在没有阻碍SVN的情况下使用我们的BitBucket Git仓库.
我们正在考虑的各种事情的一些例子:
但是,假设我们中的一个人已经这样做了,那么团队的其他成员会发生什么呢?如果他们从BitBucket Master中撤出,他们将获得更改.但是,如果他们退出SVN,他们也会得到改变.
如果两者同时会发生什么?这只是一个可能的障碍.我可以想到其他一些步骤,这些都可能陷入真正的混乱.
不幸的是,我们的持续集成工作流程与SVN相关,其他业务也是如此.因此,我们实际上没有选择完全转移到Git.我们也无法从公司外部访问我们的SVN存储库.
我正在构建一个客户端/服务器解决方案,使用AngularJS单页面应用程序作为客户端组件,并使用自主机ServiceStack RESTful API作为服务器组件.单个Visual Studio控制台应用程序项目包含AngularJS组件的HTML和JavaScript文件,以及用于引导ServiceStack AppHost的C#类(我已将接口和服务职责分配给单独的Visual Studio项目).
我已将所有HTML和JavaScript文件设置为"构建操作"为"无",并将"复制到输出目录"设置为"如果更新则复制".
只要我准备好在我的网站网址中加上"#",一切都很顺利.我想通过使用HTML5 pushstate URL来消除这种情况.
实际上,这意味着每当请求不存在的路由时,我需要说服ServiceStack提供我的默认单页面应用程序HTML shell页面.现在ServiceStack中有一个FallbackRoute属性,似乎已经为此目的添加了.
但是,我不确定如何使用它.我发现人们在这里, 这里和这里都会提出类似的问题.但是所给出的答案都是在新的FallbackRoute属性到来之前.
本质上,我正在寻找一个简单但完整的示例,说明如何使用FallbackRoute属性来确保对不存在的路由的任何请求被重定向到单个静态HTML页面.
这是我正在尝试做的事情:
public class MyTests
{
private IFixture _fixture;
public MyTests()
{
_fixture = new Fixture();
_fixture.Customize<Thing>(x => x.With(y => y.UserId, 1));
}
[Theory, AutoData]
public void GetThingsByUserId_ShouldReturnThings(IEnumerable<Thing> things)
{
things.First().UserId.Should().Be(1);
}
}
Run Code Online (Sandbox Code Playgroud)
我希望 IEnumerable<Thing> things传递到测试中的参数的 a 均为UserId1,但事实并非如此。
我怎样才能做到这一点?
这是情况:
if count items is either 0,1,5,7,8,9,10 then string = "string one"
if count items is either 2,3,4 then string = "string two"
Run Code Online (Sandbox Code Playgroud)
我试过(在cs razor视图内)
@if (@item.TotalImages == 1 || 5 || 7 || 8 || 9 || 10)
{
string mystring = "string one"
}
Run Code Online (Sandbox Code Playgroud)
但是我收到了这个错误
运营商|| 不能应用于bool或int类型的操作数
node-redis一旦一切都启动并运行,它具有处理任何 Redis 断开连接的出色功能。如果 Redis 实例变得不可用,可以使用适当的retry_strategy方式设置客户端尝试重新连接,直到 Redis 再次可用。
是否有可能让客户端在启动时进入这个状态,即使 Redis 宕机了?
我的场景是这样的:我使用 Redis 作为主要数据存储,并带有一个不基于 Redis 的备用辅助数据存储。当我的应用程序启动时,如果 Redis 不可用,则尝试检索数据将改用辅助数据存储。
但是,当 Redis 可用时,我希望我的应用程序开始使用 Redis 主数据存储。由于 Redis 连接在启动时未成功retry_strategy,因此将为先前建立的连接处理此问题的 不起作用。
我可以编写代码来重试初始 Redis 连接,直到它成功,但让我震惊的是,开箱即用的功能已经非常接近我需要的功能,如果我能说服它从即使 Redis 已关闭,也能启动。
我正在尝试编写一个函数,该函数将keyup在contentEditable div中为插入符号前面的元素提供引用.
如果插入符号位于文本节点中,则该函数应返回null.如果插入符号位于contentEditable的开头,则该函数应返回null.
但是如果插入符号位于文本节点的开头,并且此文本节点前面紧跟一个元素(如Span),则该函数应返回对此元素的引用.
并且,如果插入符号位于两个Html元素之间(例如,在两个Spans之间),则它应该返回对插入符号之前的元素的引用,即两个元素中的第一个.
如果有两个或多个文本节点紧跟在一起,则应将它们视为单个文本节点.
我已经开始拼凑一些东西了.我正在考虑使用范围偏移来计算我到文本节点的距离,但感觉过于复杂.我不禁想到有一些我没想到的明显的东西.
c# ×3
.net ×2
angularjs ×2
32bit-64bit ×1
64-bit ×1
autofixture ×1
caret ×1
dll ×1
element ×1
exception ×1
formatting ×1
git ×1
git-svn ×1
jasmine ×1
javascript ×1
localhost ×1
node-redis ×1
node.js ×1
null ×1
range ×1
redis ×1
resharper ×1
servicestack ×1
svn ×1
teamcity ×1
textnode ×1
tomcat ×1
unit-testing ×1
url-routing ×1
workflow ×1
xunit ×1
xunit2 ×1