小编Mik*_*ePR的帖子

如何从HttpResponseMessage获取特定的标头值

我正在进行HTTP呼叫.我的响应X-BB-SESSION在HttpResponseMessage对象的标题部分中包含会话代码.如何获取特定标头值?

我正在使用foreach语句迭代所有标头(MSDN链接).但是编译器一直说不能这样做:

foreach statement cannot operate on variables of type
  System.net.http.headers.cachecontrolheadervalue because
  'System.net.http.headers.cachecontrolheadervalue' doesn't contain
  a public definition for 'GetEnumerator'
Run Code Online (Sandbox Code Playgroud)

这是我正在尝试的代码:

//Connection code to BaasBox

HttpResponseMessage response = await client.SendAsync(requestMessage, HttpCompletionOption.ResponseHeadersRead);
if (response.IsSuccessStatusCode)
{
    //get the headers
    HttpResponseHeaders responseHeadersCollection = response.Headers;
    foreach (var value in responseHeadersCollection.CacheControl)  --> HERE
    {
        string sTemp = String.Format("CacheControl {0}={1}", value.Name, value.Value);
    } else
{
    Console.WriteLine("X-BB-SESSION: NOT Found");
}
Run Code Online (Sandbox Code Playgroud)

从我试图获取值(X-BB-SESSION值)的标题内容是这样的:

Access-Control-Allow-Origin: *    
Access-Control-Allow-Headers: X-Requested-With    
X-BB-SESSION: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Run Code Online (Sandbox Code Playgroud)

c# httpresponse httpclient windows-phone-8 baasbox

34
推荐指数
4
解决办法
5万
查看次数

如何在c#中使用HttpClient中的凭据?

使用HttpClient类访问Delicious API时,我遇到了一些问题.我有以下代码:

try
{
    const string uriSources = "https://api.del.icio.us/v1/tags/bundles/all?private={myKey}";
    using (var handler = new HttpClientHandler { Credentials = new  
                             NetworkCredential("MyUSER", "MyPASS") })
    {
         using (var client = new HttpClient(handler))
         {
             var result = await client.GetStringAsync(uriSources);
         }
   }
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message, "ERROR...", MessageBoxButton.OK);
}
Run Code Online (Sandbox Code Playgroud)

运行上面的代码时,我得到以下内容:响应状态代码不表示成功:401(未授权).

那么,我怎么能得到这个工作?可能吗?

提前致谢

问候!

c# windows-phone-7 dotnet-httpclient windows-phone-8 asynchttpclient

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

如何从批处理文件中执行'msbuild'命令

我想创建一个批处理文件,以便在点击时从我的VS项目中进行构建.我一直在做以下几个步骤:

  1. 以administrador身份打开cmd控制台
  2. 转到我的项目/解决方案的路径(使用CD ..,CD命令)
  3. 编写以下命令以进行构建:

    msbuild mySolution.sln/p:configuration = debug

如前所述,我只想点击一下即可完成所有这些过程.所以,我正在尝试创建一个.bat文件来完成它.

这是我的批处理文件的代码:

set location="C:\myPath\..\MyFolderSolution"
set pathMSBuild = "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe"

@echo off
cls

call %pathMSBuild%
cd %location%
msbuild.exe "lucre.sln" /p:configuration=debug
pause
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试执行批处理文件时,我收到以下错误:'msbuild'无法识别为内部或外部命令,可运行程序或批处理文件.

任何线索或帮助知道是否可能,如果可能,如何做到这一点将非常感激

问候!

console batch-file visual-studio-2010 visual-studio

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

如何在Mac上将ASP.Net Core连接到SQL Server Docker容器

我正在使用Mac上的Visual Studio 2017开发ASP.Net核心MVC应用程序。但是,连接到在Docker容器上运行的SQL Server实例时遇到一些问题。

这是我正在使用的连接字符串:

"ConnectionStrings": {
    "myCustomConnString": "Server=localhost;Database=myDataBase;User Id=sa;Password=myPassw0rd;Trusted_Connection=True;MultipleActiveResultSets=true"
  }
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:

无法使用Kerberos进行身份验证。确保已使用“ kinit”在客户端上初始化了Kerberos,并且已为SQL Server注册了服务主体名称以允许Kerberos身份验证。ErrorCode =内部错误,异常= Interop + NetSecurityNative + GssApiException:GSSAPI操作失败,并显示错误-请求了不受支持的机制(未知的机械代码为0的未知机械)。

使用SQL Operation Studio,Azure Data Studio和/或Visual Studio Code并传递相同的参数,我可以连接到SQL Server的docker实例。但是在运行ASP.Net核心应用程序时不行。因此,我不确定是否缺少连接字符串的任何其他参数。

有人试过吗?

问候!

docker asp.net-core-mvc .net-core asp.net-core .net-mac

7
推荐指数
3
解决办法
1984
查看次数

Nextjs 404 重新加载/刷新操作错误

我将 Nextjs 用于前端应用程序,并将 dotnet core 3.1 用于 Web API。有一些页面是静态的,而其他页面是动态的,我按照官方文档来实现这一点。在开发模式(本地机器)上一切正常。静态和动态路由都正常工作并从 dontnet 核心 Web API 获取数据。

但是,在按照以下步骤发布 Nextjs 应用程序时:

  1. 纱线构建
  2. 纱线出口
  3. 在项目根目录生成一个out文件夹
  4. 该文件夹的内容上传到服务器

之后,部署的文件被上传,当登录到应用程序时,它会重定向到主页面(直到这里工作正常),但是一旦我点击重新加载页面按钮(Chrome),我就会收到 404 错误。

在此处输入图片说明

查看开发人员工具中的控制台,我得到了这个: 在此处输入图片说明

我发现这个 Stackoverflow链接有同样的问题,但答案是使用 Express 进行服务器路由。就我而言,我使用 dotnet core Web API 来处理服务器请求。所以,不知道该怎么做。

有没有办法从客户端解决这个问题?可能是缺少配置?

我在导出时注意到的唯一一件事是一条消息:No "exportPathMap" found。不知道是不是这个原因。

在此处输入图片说明

reactjs react-router next.js

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

如何在 ASP.Net MVC for Mono 中使用异步

我正在使用 Visual Studio 2017 for Mac 在 Mono 中创建一个 ASP.Net MVC 项目。我添加了基本的控制器、视图、模型等,它运行良好。但是,一旦使 Index 方法异步,我就会收到以下错误:

System.InvalidOperationException
The view 'Index' or its master was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/Home/Index.aspx
~/Views/Home/Index.ascx
~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx
~/Views/Home/Index.cshtml
~/Views/Home/Index.vbhtml
~/Views/Shared/Index.cshtml
~/Views/Shared/Index.vbhtml

Description: HTTP 500.Error processing request.
Run Code Online (Sandbox Code Playgroud)

这是代码:

public async Task<ActionResult> Index()
{
   ...
}
Run Code Online (Sandbox Code Playgroud)

搜索一些信息,我发现似乎 Mono 项目不支持异步管道(mono 未找到视图“索引”或其主视图)

在 Mono 项目网站 ( https://www.mono-project.com/docs/about-mono/compatibility/ ) 中,它按版本描述了不同的兼容性特征。

有谁知道在 Mono 中使用异步的任何解决方法?或者什么时候会支持?

谢谢

c# asp.net-mvc mono c#-4.0 visual-studio-2017

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

如何在WP8上使用诺基亚成像SDK的BlendFilter?

我正在盯着诺基亚成像SDK玩它.现在,我遇到的问题是我已经存在一个Image(在我的visual studio解决方案的文件夹中),我想转换这个图像,以便在Nokia Imaging SDK的BlendFilter类中使用它.但是我不知道如何使用它.

我试图转换流中的现有图像,然后将其作为参数传递给BlendFilter构造函数.但不是运气.编译器说最好的重载方法匹配...有一些无效的参数.

这是我尝试将现有图像加载到流的方式:

Image image = new Image();
image.Source = new BitmapImage(new Uri("/Images/Template3.2.png", UriKind.Relative));

BitmapImage bitImage = new BitmapImage(new Uri("/Images/Template3.2.png", UriKind.Relative));

WriteableBitmap Bitmap = new WriteableBitmap(bitImage);
Run Code Online (Sandbox Code Playgroud)

然后:

var BlendFilter = new BlendFilter(bitImage, BlendFunction.Add);  --> the compiler error is here
Run Code Online (Sandbox Code Playgroud)

有谁知道如何使用BlendFilter类?任何一个例子都会非常有帮助.

问候!

c# windows-phone-8 visual-studio-2013 nokia-imaging-sdk lumia-imaging-sdk

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

在 SqlServer 提供程序清单中找不到存储类型“Varchar(100)”

我正在开发一个 MVC 4 项目,该项目使用 EF 6 进行与数据库 (SQL Server) 之间的所有操作。我必须进行一些重构才能使用更明确的 Fluent API。基本上,现在项目中的每个实体都有其对应的所有映射的 Fluent API 代码。

当我尝试从包管理器控制台运行 EF 命令时,问题就出现了。这是我收到的错误: 在 SqlServer 提供程序清单中找不到存储类型“Varchar(100)”

这是错误的完整日志:

PM> enable-migrations
Checking if the context targets an existing database...
System.InvalidOperationException: The store type 'Varchar(100)' could not be found in the SqlServer provider manifest
   at System.Data.Entity.Utilities.DbProviderManifestExtensions.GetStoreTypeFromName(DbProviderManifest providerManifest, String name)
   at System.Data.Entity.ModelConfiguration.Configuration.Properties.Primitive.PrimitivePropertyConfiguration.ConfigureColumn(EdmProperty column, EntityType table, DbProviderManifest providerManifest)
   at System.Data.Entity.ModelConfiguration.Configuration.Properties.Primitive.PrimitivePropertyConfiguration.<>c__DisplayClass47_0.<Configure>b__0(Tuple`2 pm)
   at System.Data.Entity.Utilities.IEnumerableExtensions.Each[T](IEnumerable`1 ts, Action`1 action)
   at System.Data.Entity.ModelConfiguration.Configuration.Types.StructuralTypeConfiguration.ConfigurePropertyMappings(IList`1 propertyMappings, DbProviderManifest providerManifest, Boolean allowOverride)
   at System.Data.Entity.ModelConfiguration.Configuration.Types.EntityTypeConfiguration.ConfigurePropertyMappings(DbDatabaseMapping databaseMapping, EntityType entityType, DbProviderManifest providerManifest, …
Run Code Online (Sandbox Code Playgroud)

c# sql-server asp.net-mvc entity-framework entity-framework-6

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