希望很容易解决.
微软的System.IdentityModels.Tokens.Jwt软件包昨天在NuGet上更新4.0.2.206211351了v5.0.不幸的是,这导致了一些"标准" IdentityServer3代码的突破性变化.即从他们的代码示例中提取,所以我想很多开发人员可能会在未来几天看到这个问题.
使用v4.0.2.xxxxxx版本的软件包.我有
using System.IdentityModel.Tokens;
Run Code Online (Sandbox Code Playgroud)
在命名空间中.
然后在Configuration方法中开始如下:
public void Configuration(IAppBuilder app)
{
AntiForgeryConfig.UniqueClaimTypeIdentifier = "sub";
JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary<string, string>();
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "Cookies"
});
app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
{ ... };
Run Code Online (Sandbox Code Playgroud)
更新说明行后:
JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary<string, string>();
Run Code Online (Sandbox Code Playgroud)
造成问题.
第一件事就是Class显然已经进入了System.IdentityModel.Tokens.Jwt命名空间,这个解决方案并不是那么糟糕.
但是,我现在收到Object reference required for a non-static field错误JwtSecurityTokenHandler.InboundClaimTypeMap.
我是否在这里遗漏了一些东西,另一个需要的库或者在Startup.Configuration()被调用之前发生了什么需要深入研究?
F#的编译器用哪种语言编写?
我听说F#的编译器是用F#编写的
(F#编译器的每个下一个版本都是用它以前的版本编写的)
但是:
1.如果它是真的,不能谷歌.
2.如果是的话,用哪种语言编写F#编译器的第一个版本?
我创建了一个Visual Studio的新的解决方案,使NuGet包恢复并得到了在soluition根.nuget含有使包恢复工作所需的下列文件夹:NuGet.exe,NuGet.config,NuGet.targets.
但我无法使nuget(如Nuget Visual Studio加载项\.nuget\NuGet.exe以及其他.\nuget\NuGet.config文件)从文件中读取设置- 仍然会从默认设置中读取设置%appdata%\NuGet\NuGet.config.
我试过了什么
我试图查看NuGet.config指定路径的位置并且没有找到类似的东西,并且nuget.exe install在构建期间运行的命令没有任何参数说"拿这个nuget.config文件".
此外,我已删除\.nuget\NuGet.config,一切正常 - 在Visual Studio构建和CI期间还原包.
题.
我的印象\.nuget\NuGet.config根本没用过.
所以基本上问题是:如何使.nuget\NuGet.Config文件不被忽略?
我做错了什么,怎么写呢?
谢谢,并有一个很好的%time_of_day%:)
免责声明
我上面提到的所有内容都不是问题/问题 - 当前的nuget行为对我来说是完全可以接受的 - 我只是因为我同时感到好奇和困惑
如何在里面生成自定义html的动作链接.
如下:
<a href="http://blah-blah/.....">
<span class="icon"/>
New customer
</a>
我收到了一个错误报告,其中堆栈跟踪的顶部类似于:
System.NullReferenceException: <...> at MyApplication.MyType.SomeMethod(String arg) in MyType.cs:line 0Run Code Online (Sandbox Code Playgroud)
关键是,行号是0。什么会导致这种堆栈跟踪行为?
我正在考虑设置Intranet级Nuget feed(我公司的团队应该使用它).
我简要介绍了Pro Nuget书中的一些教程+相应的章节,但到目前为止我仍然有一些问题:
api key?api key公共源配置为默认值?有没有人遇到过这些案件之一?任何提示都表示赞赏.
谢谢!
我有一个包含2个项目的C#解决方案:
现在,奇怪的是,如果我在控制台应用程序中没有包含对"Microsoft.IdentityModel.Clients.ActiveDirectory"的nuget引用,则会抛出错误:
[FileLoadException:无法加载文件或程序集'Microsoft.IdentityModel.Clients.ActiveDirectory,Version = 3.10.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)]
但是,当我简单地添加该引用时,一切正常.
我很困惑为什么会这样?类库已经有了对包的引用,并且类库是唯一使用该包的类,所以为什么我还要添加对控制台应用程序的引用?
有趣的是,我随后包含了一个WebApp并将所有内容发布到Azure订阅中.Web应用程序也会出现同样的问题.如果我在Web App中添加对"Microsoft.IdentityModel.Clients.ActiveDirectory"nuget包的引用,一切正常,但是如果我将其删除,则会抛出上述异常.请注意,WebApp不直接使用该包,它只是调用类库(已经有引用并正在使用它).
有人可以对这里发生的事情有所了解吗?
我需要将应用程序的文件安装到通常的位置,例如C:\Program Files\MyApp
,还需要将其中几个文件复制到另一个分区的自定义文件夹中
(比方说D:\CustomFolder,允许对其进行硬编码)。
安装应该是静默的 - 没有 GUI 或向导。而且所有内容都应该位于一个 *.msi 文件中。
我可以通过 做到这一点CustomActions,但优雅的声明方式更好。
以前有人尝试过这个吗?
谢谢。
更新:忘记提及,允许应该位于单独分区上的文件位于C:\Program Files\MyApp
我在IE11上使用WatiN 2.1.0.
如果我使用以下代码,WatiN sucessfuly导航到页面,但它似乎没有加载我要求的页面.相反,它认为它正在关注:空白.
var Browser = new IE();
Browser.GoTo("www.bing.com");
Browser.Url; // = about:blank
Run Code Online (Sandbox Code Playgroud)
当我尝试在Intranet中加载任何页面时,我得到相同的行为.
我最初认为IE11是问题所在.但是,如果我用google.com或yahoo.com或stackoverflow.com取代bing.com,它就像一个魅力.有关为什么某些页面可以加载而不加载其他页面的任
我正在尝试使用以下签名创建字符串扩展方法:
public static DateTime? TryParseExact(this string src, string format, IFormatProvider provider = DateTimeFormatInfo.CurrentInfo, DateTimeStyles style = DateTimeStyles.None)
{
}
Run Code Online (Sandbox Code Playgroud)
我收到编译器错误:
'provider'的默认参数值必须是编译时常量
在谷歌找不到任何东西,我唯一的工作就是这样做:
public static DateTime? TryParseExact(this string src, string format, IFormatProvider provider = null, DateTimeStyles style = DateTimeStyles.None)
{
if (provider == null)
provider = DateTimeFormatInfo.CurrentInfo;
}
Run Code Online (Sandbox Code Playgroud)
任何人都知道如何在签名中设置IFormatProvider的默认值?它甚至可能吗?IFormatProvider是一个接口,所以我假设这就是问题所在.
我正在尝试从某个网站下载响应,以确认该网站已启动并测量响应时间(在网站内容中提供)
该页面的网址如下https://www.blabla.com.au/ServiceAvailability
我可以在浏览器中输入页面网址,我可以看到页面已启动并提供了响应时间。我还可以单击该链接,该页面也将加载到 Visual Studio 浏览器中。
但是当我尝试从我的应用程序调用相同的网址时,我得到以下信息System.Net.WebException:
{“无法解析远程名称:“www.blabla.com.au”}
该代码在我的本地 PC 上运行,我也从本地 PC 访问该网站,并且可以从浏览器和 VS 中打开该页面
我的代码如下所示:
string myUrl ="https://www.blabla.com.au/ServiceAvailability";
using (WebClient webClient = new WebClient())
{
result = webClient.DownloadString(myUrl);
}
Run Code Online (Sandbox Code Playgroud)
哪里result是一个string
我已尝试以下方法来解决该问题:
尝试按照以下代码块使用 WebRequest 和 HttpWebRequest:
WebRequest req = WebRequest.Create(myUrl);
res = req.GetResponse();
HttpWebRequest req = WebRequest.Create(myUrl) as HttpWebRequest;
HttpWebResponse res = req.GetResponse() as HttpWebResponse;
Run Code Online (Sandbox Code Playgroud)我的问题是我设置到我的网格的图像没有出现,唯一出现的是黑色背景,所以我知道网格正在工作。我是菜鸟,我很困惑。谢谢您的帮助 :)
代码:
public partial class MainWindow : Window
{
static String ImgNameMole = "C:/Users/MonAmi/Desktop/mole2.png";
public MainWindow()
{
InitializeComponent();
GridMain();
}
private void GridMain()
{
Grid grid_Main = new Grid();
MainWindow1.Content = grid_Main;
grid_Main.Height = 350;
grid_Main.Width = 525;
grid_Main.Background = Brushes.GreenYellow;
CreateImage();
}
private Image CreateImage()
{
Image Mole = new Image();
Mole.Width = 25;
Mole.Height = 25;
ImageSource MoleImage = new BitmapImage(new Uri(ImgNameMole));
Mole.Source = MoleImage;
return Mole;
}
}
Run Code Online (Sandbox Code Playgroud) c# ×7
.net ×3
nuget ×3
actionlink ×1
asp.net ×1
asp.net-mvc ×1
f# ×1
grid ×1
image ×1
nuget-server ×1
reference ×1
security ×1
stack-trace ×1
watin ×1
webrequest ×1
wix ×1
wpf ×1