小编cle*_*ris的帖子

Azure SDK 2.5.1无法发布cloudService

成功将我的云服务升级到新的"Azure SDK for .NET 2.5.1 "后,我在尝试打包/发布时遇到以下错误.

无法加载文件或程序集"Microsoft.WindowsAzure.Packaging,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其依赖项之一.该系统找不到指定的文件.C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Windows Azure Tools\2.5\Microsoft.WindowsAzure.targets

"Microsoft.WindowsAzure.targets"配置文件中的相关行是2930,这显然与CSPack有关.

<CSPack
  ServiceDefinitionFile="@(TargetServiceDefinition)"
  Output="@(PublishServicePackage)"
  PackRoles="@(Roles)"
  SiteMapping="@(SiteMapping)"
  RoleProperties="@(RoleProperties)"
  ImportedModules="@(ImportedModules)"
  CopyOnly="false"
  >
</CSPack>
Run Code Online (Sandbox Code Playgroud)

因此,我继续在一个全新的项目中创建一个全新的Azure云服务,以查看升级是否出现问题.不幸的是问题仍然存在.

有没有解决方法或者我必须回滚到v2.4(这会给我带来很大的痛苦)

我在VS 2013更新4上运行.

azure azure-deployment azure-sdk-.net visual-studio-2013 azure-cloud-services

61
推荐指数
2
解决办法
6544
查看次数

如何配置XUnit以在Visual Studio 2015测试资源管理器中仅显示方法名称?

xunit.runner.visualstudio在Visual Studio 2015中使用2.0.1版时,测试的名称显示为完全限定.有没有办法让测试只显示方法名称?

考虑以下测试: -

namespace MySolution.Tests
{
    public class MyTestClass
    {
        [Fact]
        public void ClassUnderTest_WhenDefaultConstructorUsed_SomePropertyIsNotNull()
        {
            *... test code in here*
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在测试资源管理器中显示为: -

MySolution.Tests.MyTestClass.ClassUnderTest_WhenDefaultConstructorUsed_SomePropertyIsNotNull
Run Code Online (Sandbox Code Playgroud)

使用MSTest/VSTest,这将显示为: -

ClassUnderTest_WhenDefaultConstructorUsed_SomePropertyIsNotNull
Run Code Online (Sandbox Code Playgroud)

xunit.net test-explorer visual-studio-2015

41
推荐指数
2
解决办法
7965
查看次数

用C#解析EDI平面文件?

最初我正在考虑使用SSIS来解析EDI文件,但是我已经看过一些手动EDI解析器(字段映射),并且想在C#中使用自动化这个功能.

示例EDI文件:

示例EDI文件

c# parsing edi x12 flat-file

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

本地化的scriptbundle解决方案

嗨,我目前正在使用asp.net MVC 4 rc与System.Web.Optimization.由于我的网站需要根据用户偏好进行本地化,因此我正在使用jquery.globalize插件.

我非常希望继承ScriptBundle类,并根据需要确定要捆绑的文件System.Threading.Thread.CurrentThread.CurrentUICulture.这看起来像这样:

bundles.Add(new LocalizedScriptBundle("~/bundles/jqueryglobal")
                             .Include("~/Scripts/jquery.globalize/globalize.js")
                             .Include("~/Scripts/jquery.globalize/cultures/globalize.culture.{0}.js", 
                                       () => new object[] { Thread.CurrentThread.CurrentUICulture })
                    ));
Run Code Online (Sandbox Code Playgroud)

例如,如果ui文化是"en-GB",我希望拾取以下文件(当然缩小,如果可能的话,也会缓存,直到脚本文件或currentui文化发生变化).

  • "〜/脚本/ jquery.globalize/globalize.js"
  • "〜/ Scripts/jquery.globalize/globalize-en-GB.js"< - 如果此文件在服务器文件系统上不存在,则回退到globalize-en.js.

我尝试使用类似下面的内容重载Include方法,但这不会起作用,因为它不是根据请求进行评估,而是在应用程序启动时进行评估.

public class LocalizedScriptBundle : ScriptBundle
{
    public LocalizedScriptBundle(string virtualPath)
        : base(virtualPath) { 
    }

    public Bundle Include(string virtualPathMask, Func<object[]> getargs) {
        string virtualPath = string.Format(virtualPathMask, getargs());
        this.Include(virtualPath);
        return this;
    }

}
Run Code Online (Sandbox Code Playgroud)

谢谢

康斯坦丁

asp.net-mvc localization bundling-and-minification asp.net-optimization

11
推荐指数
1
解决办法
3507
查看次数

缓存反射结果(类属性)

考虑到不应该重新评估相当静态的数据而是缓存,我想知道是否可以使用Reflection获取一次类属性,然后缓存它们以便我可以动态评估对象属性和读取/赋值,但不是每次我这样做都会有反射开销.这可能吗(示例代码?)?

为了澄清一点,让我说我有这个类:

public class Cloud
{
     Boolean IsWhite;
}
Run Code Online (Sandbox Code Playgroud)

而我正在尝试制作一个方法,允许我做这样的事情(伪代码):

Update(myCloudInstance, new {IsWhite, true});
Run Code Online (Sandbox Code Playgroud)

如果现在知道已经知道Cloud的属性(typeof(myCloudInstance)),则应首先检查缓存,然后使用缓存信息将属性"IsWhite"赋值为"true",而不是再次执行Reflection.

关于如何做到这一点的任何想法?

.net c# reflection caching

7
推荐指数
1
解决办法
5819
查看次数

用于云服务请求的Azure CDN将转发到<myapp> .cloudapp.net而不是我的自定义主机名绑定

正如上面标题中提到的,我有一个带有WebRole的云服务,它运行一个Web应用程序www.myappname.com.我已采取所有必要步骤,使用IIS上的url rewrite模块从我的应用程序中提供CDN内容.这工作正常,但:

  1. 来自CDN的请求将转发到.cloudapp.net而不是我的自定义主机名绑定.我在配置中找不到任何更改此位置的地方.当我创建新的CDN端点时,我设置ORIGIN DOMAIN的选项仅限于我的云服务端点
  2. 假设我的云服务CDN端点有自定义域名(例如static.appnamecdn.com).当我使用https发出请求时会发生什么?我没有看到任何地方注册"static.appnamecdn.com"的ssl证书.这不是必需的吗?

azure azure-cdn

6
推荐指数
1
解决办法
901
查看次数

在服务器/应用程序之间共享 IClaimsPrincipal/FedAuth Cookie ID1006

我有一个 ASP.NET 应用程序,它使用 Azure ACS(和间接 ADFS)进行身份验证 - 一切正常。现在我被要求将 SessionToken 传递给另一个后端服务,在那里可以验证它并提取声明。[长话短说,不是我的选择]

我在解密方面很合适,而且我确定我错过了一些基本的东西。

为了设置阶段,解密时的错误是:

ID1006: The format of the data is incorrect. The encryption key length is negative: '-724221793'. The cookie may have been truncated.
Run Code Online (Sandbox Code Playgroud)

ASP.NET 网站使用 RSA 包装器ala:

ID1006: The format of the data is incorrect. The encryption key length is negative: '-724221793'. The cookie may have been truncated.
Run Code Online (Sandbox Code Playgroud)

(指纹与 FedUtil 在 web.config 中添加的值相同。

我用以下命令编写令牌:

    void WSFederationAuthenticationModule_OnServiceConfigurationCreated(object sender, ServiceConfigurationCreatedEventArgs e)
        {
            string thumbprint = "BDE74A3EB573297C7EE79EB980B0727D73987B0D";

            X509Certificate2 certificate = GetCertificate(thumbprint);

            List<CookieTransform> sessionTransforms …
Run Code Online (Sandbox Code Playgroud)

federated-identity wif ws-federation

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

使用$ rootscope显示和隐藏

我的index.html模板中有一个搜索栏,我需要隐藏在某些页面上.我正在使用ui-router$state.

我可以使这项工作的唯一方法就是注入$rootscope到我的所有控制器要么ng-hide: truefalse将其打开或关闭需要的地方.(我只需要隐藏在1或2页上)

我不认为这是正确的方法,因为我的所有控制器现在都依赖并注入了$rootscope.

还有另一种方法吗?

angularjs angular-ui-router angularjs-rootscope

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

Azure:上下文在Code First模式下使用,代码是从EDMX生成的

我有MVC应用程序在本地运行良好.更新到Azure后,它开始抛出错误:

在Code First模式中使用上下文,其中包含从EDMX文件生成的用于Database First或Model First开发的代码.这将无法正常工作.要解决此问题,请不要删除引发此异常的代码行.如果您希望使用Database First或Model First,请确保Entity Framework连接字符串包含在启动项目的app.config或web.config中.

我检查了本地web.config和azure web.config之间是否有任何区别.除了凭证,一切都是一样的.它读到:

<add name="DBEntities" 
     connectionString="metadata=res://*/DBModel.csdl|res://*/DBModel.ssdl|res://*/DBModel.msl;
                       provider=System.Data.SqlClient;
                       provider connection string=&quot;data source=xx;initial catalog=xx;persist security info=True;user id=xx;password=xx;MultipleActiveResultSets=True;application name=EntityFramework&quot;" 
     providerName="System.Data.EntityClient" />
Run Code Online (Sandbox Code Playgroud)

我使用的是EF 6.1.3,MVC5

database connection-string azure entity-framework-6

4
推荐指数
2
解决办法
3583
查看次数

不支持关键字:'数据源' web.config

我似乎看不出问题出在我的连接字符串中,字符串中有 " 我什至尝试按照 stackoverflow 上的建议添加单引号,但它似乎仍然没有做任何事情。

以下是我的连接字符串,出于安全原因,取出并重命名了实际信息;

<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=IP ADDRESS;Initial Catalog=DB NAME;integrated security=False;Persist Security Info=True;User ID=USERID;Password=PASSWORD" providerName="System.Data.SqlClient" />
    <add name="ENTITYNAME" connectionString="metadata=res://*/ModelName.csdl|res://*/ModelName.ssdl|res://*/ModelName.msl;provider=System.Data.SqlClient;provider connection string=IPADDRESS&quot;Data Source=IP ADDRESS;initial catalog=DB NAME;integrated security=False;MultipleActiveResultSets=True;App=EntityFramework;User ID=USERNAME;Password=PASSWORD&quot;" providerName="System.Data.EntityClient" />      
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

c# connection-string database-connection datasource web-config

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