当我尝试调试Windows Phone 8.1项目时,Locals窗口为空,Watch显示错误this:
this error CS0012: The type 'TaskAwaiter<>' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Threading.Tasks, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
Run Code Online (Sandbox Code Playgroud)
其他一切似乎都运行得很好,没有与此相关的错误/警告,只有在调试时才会发生.而且并非适用于所有项目.
我尝试过在Stack和MDSN上找到的一些修复,但是:
<CheckForSystemRuntimeDependency>true</CheckForSystemRuntimeDependency>没有改变任何东西;还有什么我可以尝试的吗?
我在我的一个项目中JSON设置了一堆文件Embedded resource.我正在使用Newtonsoft.Json解析这些文件:
public static string ReadStringFromStream(string streamName)
{
using (System.IO.Stream stream = new EmbeddedResourceReader().GetType().Assembly.GetManifestResourceStream(streamName))
{
byte[] result = new byte[stream.Length];
stream.Read(result, 0, (int)stream.Length);
var str = Encoding.UTF8.GetString(result);
return str;
}
}
...
var traits = JsonConvert.DeserializeObject<Genre[]>(EmbeddedResourceReader.ReadStringFromStream("LNTCore.Genres.json"));
Genres = traits;
Run Code Online (Sandbox Code Playgroud)
这会在Newtonsoft.Json中引发异常,因为它无法解析文件的开头.在这种情况下,最佳做法是什么?我应该如何处理这种情况?
谢谢!
我想在重新安装 VS 之前备份这些项目。我在哪里可以找到它们?我发现一个答案说这个数据存储在注册表中,但VS17似乎并非如此。
我想使用Visual Studio进行一些JS编码,但我不确定如何修复IS以正确获取变量类型.
即使我添加了所有必需的引用,我也会收到此消息.将$gameMessage在声明rpg_managers.js文件.
我的猜测是,这是因为在声明时,已经null分配了变量(见这里).如何在不干扰rpg_managers.js文件的情况下修复它?不幸的是,它并不像C#那么容易,因为JS中没有硬编码类型.
我可以轻松解决这个问题,还是应该为js使用其他IDE?因为我认为我曾经看到有人使用其他编辑器并没有发生这个问题.
javascript intellisense visual-studio javascript-intellisense visual-studio-2015
以下是API为每个项目返回的XML部分:
<message>
<appid>730</appid>
<classid>469467368</classid>
<instanceid>302028390</instanceid>
<currency>false</currency>
<background_color/>
<icon_url>
-9a81dlWLwJ2UUGcVs_nsVtzdOEdtWwKGZZLQHTxDZ7I56KU0Zwwo4NUX4oFJZEHLbXH5ApeO4YmlhxYQknCRvCo04DEVlxkKgpou6ryFA957PfMYTxW09SzlZaS2aX3MOvSlzlQucdy2LqU9NmnjAzl_UJoYmqldYSTIQI_NV_X81bvkufxxcjryPo2vmI
</icon_url>
</message>
Run Code Online (Sandbox Code Playgroud)
如何解析该字符串并将其转换为URL?
谢谢!
我正在尝试在我的 UWP 应用程序中压缩一些文本。我创建了这个方法,以便以后更容易:
public static byte[] Compress(this string s)
{
var b = Encoding.UTF8.GetBytes(s);
using (MemoryStream ms = new MemoryStream())
using (GZipStream zipStream = new GZipStream(ms, CompressionMode.Compress))
{
zipStream.Write(b, 0, b.Length);
zipStream.Flush(); //Doesn't seem like Close() is available in UWP, so I changed it to Flush(). Is this the problem?
return ms.ToArray();
}
}
Run Code Online (Sandbox Code Playgroud)
但不幸的是,无论输入文本是什么,这总是返回 10 个字节。是不是因为我不使用.Close()的GZipStream?
我试图让我的应用程序的用户选择为某些功能设置键盘热键。
现在我TextBox在KeyDown事件中使用 a ,如下所示:
Key Hotkey;
private void SetHotKey(object sender, KeyEventArgs e)
{
(sender as TextBox).Text = e.Key.ToString();
Hotkey = e.Key;
e.Handled = true;
}
Run Code Online (Sandbox Code Playgroud)
这种方法的问题是我无法设置复杂的快捷方式,例如 [Ctrl]+[F4]。是否有一些 3rd 方控制可以帮助解决这个问题?或者更适合在文本框上订阅的事件?
更新:我已经更改了我的代码,但似乎我仍然做错了什么。
Key Hotkey;
bool lControl = false;
bool lAlt = false;
bool lShift = false;
private void SetHotKey(object sender, KeyEventArgs e)
{
var k = e.Key;
if (e.IsDown)
{
var tb = sender as TextBox;
tb.Text = "";
lControl = Keyboard.IsKeyDown(Key.LeftCtrl);
lAlt = Keyboard.IsKeyDown(Key.LeftAlt);
lShift = …Run Code Online (Sandbox Code Playgroud) 我正在尝试将大量对象插入表中,但我没有任何有效的方法来检查某些记录是否已经存在。每次我用这个:
using Z.EntityFramework.Extensions.Core;
...
await ac.BulkInsertAsync(query, (o) => { o.?? });
Run Code Online (Sandbox Code Playgroud)
它只是在每次找到重复项时停止插入。有没有办法一次运行所有查询而不只是在第一个错误处停止,或者直接应用IGNORE?
我正在尝试使用 ASP.NET Core 提出一个简单的 API,我想根据请求的授权标头限制对某些端点的访问。
在 ASP.NET MVC5 中,我可以通过继承AuthorizationFilterAttribute和覆盖 check 方法来做到这一点,就像这样:
public class BasicAuthorizationAttribute : AuthorizationFilterAttribute
{
public override void OnAuthorization(HttpActionContext actionContext)
{
try
{
if (actionContext.Request.Headers.Authorization == null)
{
actionContext.Response = actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized);
return;
}
var authorizationToken = Encoding.UTF8.GetString(Convert.FromBase64String(actionContext.Request.Headers.Authorization.Parameter)).Split(':');
var username = authorizationToken[0];
var password = authorizationToken[1];
if (SecurityHelper.Login(username, password))
{
Thread.CurrentPrincipal = new GenericPrincipal(new GenericIdentity(username), null);
actionContext.RequestContext.Principal = Thread.CurrentPrincipal;
}
else
{
actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized);
return;
}
} catch
{
actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized);
return;
} …Run Code Online (Sandbox Code Playgroud) c# ×7
.net ×4
asp.net-core ×1
compression ×1
gzipstream ×1
insert ×1
intellisense ×1
javascript ×1
json ×1
json.net ×1
uwp ×1
windows-10 ×1
wpf ×1