小编Aar*_*n M的帖子

问题使用具有多个配置的msbuild构建单个项目

问题

我们在解决方案中使用配置转换.例如:Debug,Test,Staging,Release但是,这些配置仅用于我们的MVC项目.所有库只使用Debug和Release,这更有意义,因为我们的库只需要在调试模式或发布模式下构建.

尝试从命令行构建单个项目时会出现此问题.我需要能够这样做才能将我们的构建从TeamCity自动部署到我们的测试环境.

当我像这样构建单个项目时

msbuild myproject.csproj 
/t:Build 
/P:Configuration=Test 
/P:Platform=AnyCPU 
/P:DeployOnBuild=True 
/P:DeployTarget=MSDeployPublish 
/P:MsDeployServiceUrl=https://SERVER:8172/MsDeploy.axd 
/P:AllowUntrustedCertificate=True 
/P:MSDeployPublishMethod=WMSvc 
/P:CreatePackageOnPublish=True 
/P:UserName=Username 
/P:Password=Passsword 
/P:DeployIisAppPath="IISAPPPATH"
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

myproject.csproj" (Build target) (1) ->
"C:\src\myproject.csproj" (default target) (18) ->
  c:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(483,9)
: error : The OutputPath property is not set for project 'sampleLibrary.csproj'.  
Please check to make sure that you have specified a valid combination of
 Configuration and Platform for this project.  Configuration='Test'
  Platform='AnyCPU'.  You may be seeing this message because you are trying
 to build a project without a solution …

c# msbuild asp.net-mvc

28
推荐指数
3
解决办法
2万
查看次数

当第二个用户登录时,ContextSessionSecurityToken被覆盖

我在单个生产环境中遇到了一个非常棘手的问题.

你有两个用户,A和B.用户A登录,一切正常.用户B登录,用户B登录后,用户A现在拥有与用户B相同的安全令牌.

我们的WIF设置是相当标准的,我们在令牌上注入了一些自定义声明,但其他所有内容看起来都是标准的,就令牌的创建和存储方式而言(由WIF处理).

感觉我可能遇到了一些我不熟悉的WIF的奇怪边缘情况

更新:A和B都可以位于不同的计算机上,也可以位于同一台计算机上的不同浏览器中.

我们在请求服务时获取令牌的位置

if (HttpContext.Current == null)
    return null;

if (HttpContext.Current.Cache == null)
    return null;

if (FederatedAuthentication.SessionAuthenticationModule == null)
    return null;

if (FederatedAuthentication.SessionAuthenticationModule.ContextSessionSecurityToken == null)
    return null;

var sessionToken = FederatedAuthentication.SessionAuthenticationModule.ContextSessionSecurityToken;
if (sessionToken.ClaimsPrincipal == null)
    throw new InvalidOperationException("The ClaimsPrincipal property of the FederatedAuthentication.SessionAuthenticationModule.ContextSessionSecurityToken object is null");
if (sessionToken.ClaimsPrincipal.Identities == null)
    throw new InvalidOperationException("The ClaimsPrincipal.Identities sub-property of the FederatedAuthentication.SessionAuthenticationModule.ContextSessionSecurityToken object is null");
if (sessionToken.ClaimsPrincipal.Identities.Count == 0)
    throw new InvalidOperationException("The ClaimsPrincipal.Identities sub-property of the FederatedAuthentication.SessionAuthenticationModule.ContextSessionSecurityToken object has no identities"); …
Run Code Online (Sandbox Code Playgroud)

.net c# wif

10
推荐指数
1
解决办法
757
查看次数

代表一个不规则形状的游戏世界

我正在开展一个游戏世界不规则形状的项目(想想湖的形状).这个形状有一个网格,坐标放在它上面.游戏世界只在形状的内部.(再一次,想想湖)

我怎样才能有效地代表游戏世界?我知道很多世界基本上是方形的,并且在2维或3维数组中运行良好.我觉得如果我使用一个正方形的数组,那么我基本上是在浪费空间,并且增加了我需要迭代数组的时间.但是,我不确定锯齿状阵列在这里是如何工作的.

游戏世界的示例形状

X
XX
 XX   X XX
 XXX XXX
  XXXXXXX
XXXXXXXX
 XXXXX XX
   XX   X
  X
Run Code Online (Sandbox Code Playgroud)

编辑:游戏世界很可能需要逐步完成每个有效位置.所以我想一个方法可以很容易地做到这一点.

c#

8
推荐指数
1
解决办法
281
查看次数

集成测试链接WCF服务与测试数据库

寻找关于如何在这里进行的一些建议.

我正在尝试对调用其他wcf服务的wcf服务进行一些集成测试.我想确保它们之间的配置正确.我们目前正在使用spring.net和Nhibernate.我不确定的是如何在不实际保存数据库的情况下检查数据库是否正在更新.

我有msmq和wshttp服务,我试图在这里测试.我熟悉事务,因为我们在春天使用它们,但我不知道如何设置我的测试来回滚未在集成测试中直接测试的服务中的事务.

现在我唯一提出的选择是使用测试数据库和测试数据,但似乎必须有一个比这更好的解决方案.

c# nhibernate wcf integration-testing spring.net

5
推荐指数
1
解决办法
518
查看次数

使用 configsource 时发布失败

我正在尝试发布一个 mvc 应用程序。每当我发布时都会遇到以下错误

错误 203 加载配置文件时发生错误:目录“C:\DevelopmentPath\csautoparameterize\original\bin\Extensions”不存在。无法开始监视文件更改。

扩展目录是包含外部配置源文件的目录,该文件包含在此应用程序中引用的单独项目中。看起来该目录结构没有被复制,并且丢失了

c# msbuild visual-studio-2010

5
推荐指数
0
解决办法
282
查看次数

以编程方式在asp.net应用程序上的microsoft.identityModel中配置federatedAuthentication元素

我试图以编程方式生成microsoft.identityModel配置中包含的以下配置.

<federatedAuthentication>
   <wsFederation passiveRedirectEnabled="false" requireHttps="true" issuer="https://IssuedByFoo.com" realm="http://Foo.com/" />
   <cookieHandler requireSsl="true" path="/" />
</federatedAuthentication>
Run Code Online (Sandbox Code Playgroud)

到目前为止,我还没能成功配置它.我尝试在application_Start中设置以下内容,但在尝试联合时收到错误消息

"ID5002:FederatedPassiveSignIn控件上的Issuer属性必须设置为可以处理WS-Federation被动协议消息的STS端点的地址."

FederatedAuthentication.WSFederationAuthenticationModule.Realm = "http://Foo.com/";
FederatedAuthentication.WSFederationAuthenticationModule.Issuer = "https://IssuedByFoo.com";
FederatedAuthentication.WSFederationAuthenticationModule.PassiveRedirectEnabled = false;
FederatedAuthentication.WSFederationAuthenticationModule.RequireHttps = true;
FederatedAuthentication.SessionAuthenticationModule.CookieHandler.RequireSsl = true;
FederatedAuthentication.SessionAuthenticationModule.CookieHandler.Path = "/";
Run Code Online (Sandbox Code Playgroud)

我很确定我没有正确配置FederatedAuthentication,我不确定在哪里正确配置它.我注意到的一件事是,当我在开始请求上设置断点并检查FederatedAuthentication.WSFederationAuthenticationModule时,当web.config中没有值时,我看不到设置的属性.

c# asp.net asp.net-mvc wif

5
推荐指数
2
解决办法
6565
查看次数

6502相对地址模式换行

阅读6502上的文档,我无法在任何地方找到答案.使用相对寻址时可以换行.但是有可能包裹两端吗?我猜这是可能的,但不太可能.

当我的意思是两端,我的意思是我知道你可以从高PC到低PC.但是你也可以从低PC到高PC吗?

assembly 6502

4
推荐指数
1
解决办法
1005
查看次数

如何将变量从表单传递到表单?

使用用户必须单步执行的表单集合时,最好在创建该表单的新实例时传递数据,还是从上一个表单调用函数更好?我编写了一些调用上一个例程的代码,它看起来很难看,而且我无法想到为什么这样做的原因.我想出的唯一原因是数据是否很大,并且除了特殊情况之外,用户很可能不会使用数据.

vb.net

3
推荐指数
1
解决办法
1001
查看次数

改善我的数据访问层

我在重新编写我的软件中的数据访问层(如果你甚至可以称之为)那么重要.这真的是我使用的第一个项目,事情是以不正当的方式完成的.

在我的项目中,所有被拉出的数据都存储在一个arraylist中.在被放回到arraylist之前,一些数据从arraylist转换为类型化对象.

此外,应用程序中没有中央查询集.这意味着一些查询是复制和粘贴的,我也想删除.这个应用程序有一些非常标准的自定义对象,以及一些对这些对象非常标准的查询.

我真的不确定是否应该在我的对象和读写数据库的类之间创建一个层.该层将获取来自数据库的数据,将其键入为正确的对象,如果存在返回多个对象的情况,则返回这些对象的列表.这是一个好方法吗?

此外,如果这是一种很好的做事方式,我该如何从数据库中返回数据?我目前正在使用SqlDataReader.read,并填充数组列表.我确信这不是在这里使用的最佳方法,我只是不清楚如何改进这一点.

所有这一切的原因是,我想将所有数据库操作集中到几个类中,而不是将它们分散在项目的所有类中

sql vb.net

2
推荐指数
1
解决办法
334
查看次数