小编Krz*_*rko的帖子

Visual Studio 2019 还原完成的 nuget 循环

我的 C# 多项目解决方案在使用 VS2019 profesional 16.5.5 和 16.5.4 时遇到问题。它正确地编译、测试和执行,但在后台我不断恢复 nuget 包,每隔几秒钟完成一次。CPU 接近 100%。

我已经尝试过Update-Package -reinstallnuget locals all --clear(来自: 如何在 Visual Studio 2017 中修复此 NuGet Restart 循环?),更新 V​​S,删除我的.vs文件夹,清理解决方案,再次从 git 检出项目,甚至重新启动。似乎没有任何帮助。

该项目有几个主要项目:两个控制台,一个 AspNetCore,一个 WPF。它们使用标准 2.0 或共享 C# 项目中的公共库。

输出窗口中的包管理器日志有数百个条目,例如:

Time Elapsed: 00:00:00.7441577
========== Finished ==========

Time Elapsed: 00:00:00.8448774
========== Finished ==========

Time Elapsed: 00:00:00.8410551
========== Finished ==========

Time Elapsed: 00:00:00.7351174
========== Finished ==========

Time Elapsed: 00:00:00.7997720
========== Finished ==========

Time Elapsed: 00:00:00.9367757
========== Finished ========== …
Run Code Online (Sandbox Code Playgroud)

nuget visual-studio-2019

10
推荐指数
2
解决办法
1060
查看次数

在C#中,字段初始化器和对象初始化器如何交互?

我主要是一名C++开发人员,但最近我一直在用C#开发一个项目.今天我在使用对象初始化器时遇到了一些意外的行为,至少对我来说是这样.我希望这里有人可以解释发生了什么.

例A

public class Foo {
    public bool Bar = false;
}

PassInFoo( new Foo { Bar = true } );
Run Code Online (Sandbox Code Playgroud)

例B

public class Foo {
    public bool Bar = true;
}

PassInFoo( new Foo { Bar = false } );
Run Code Online (Sandbox Code Playgroud)

示例A按照我的预期工作.传递给PassInFoo的对象将Bar设置为true.但是,在示例B中,尽管在对象初始值设定项中赋值为false,但foo.Bar设置为true.什么会导致示例B中的对象初始化程序看似被忽略?

c# mono initialization unity-game-engine

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

Visual Studio 调试器在调试中无法正确显示 std::string

当我暂停程序时,我和我的团队遇到了 Visual Studio 显示乱码而不是正确字符串内容的问题。里面的字符串数据是正确的,只是VS的调试器不知何故丢失了。

\n\n

我将正确的内容标记为绿色,错误的内容标记为红色。

\n\n

VS 16.3.4 中的 std::string 乱码问题

\n\n

你可以看到std::string定义为

\n\n
const std::string testStdString = "contents of std::string";\n
Run Code Online (Sandbox Code Playgroud)\n\n

显示为"\\b\xc3\x84\xc4\x8eD\\x19"调试悬停和监视窗口。但 C 弦.c_str()显示良好。写入的控制台cout也显示正常。\n这个损坏的值在每次运行时都会发生变化。

\n\n

在原始视图模式下,您可以看到指针内容显示为 ASCII 时,看起来就像调试器认为的字符串内容。那么也许有一些短字符串优化相关的问题?

\n\n

字符串的原始视图

\n\n

如果将其解码为字符串:

\n\n
"\\b\xc3\x84\xc4\x8eD\\x19"\n    [0x00000000]: 0x08 \'\\b\'\n    [0x00000001]: 0xc4 \'\xc3\x84\'\n    [0x00000002]: 0xcf \'\xc4\x8e\'\n    [0x00000003]: 0x44 \'D\'\n    [0x00000004]: 0x19 \'\\x19\'\n    [0x00000005]: 0x00 \'\\0\'\n
Run Code Online (Sandbox Code Playgroud)\n\n

buf与原始视图中可见的属性匹配:(0x0000001944cfc408相反顺序)。

\n\n

问题仅影响std::stringstd::wstringC 字符串工作正常。当我尝试使用std::string::c_str()它时效果也很好。

\n\n

当我尝试使用一个简单的新项目时,不会出现此问题 - 但在我们使用本机 C++ 和 C# UWP 解决方案的 …

c++ stdstring visual-studio-debugging visual-studio-2019

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

尝试在Samsung Gear 2上安装应用程序时为SIGNATURE_INVALID

向三星注册以获得开发者证书后,我无法安装我的应用程序,我得到了SIGNATURE_INVALID(代码22)。

该应用程序可以是任何东西,包括IDE向导中的hello world应用程序。

有趣的是,在收到三星发回的电子邮件并安装密钥之前,我已经部署了一个hello world应用程序,并且可以正常工作。无法再重复此操作。

从IDE登录:

Launching the Tizen application...
# If you want to see the detailed information,
# please set the logging level to DEBUG in Preferences and check the log file in '(...)'.

[Initializing the launch environment...]
    RDS: On
    Target information: SM-R380
    Application information: Id(p8BYHTMfs6.Pilot), Package Name(p8BYHTMfs6), Project Name(Pilot)
[Transferring the package...]
    Repackaging is in progress before the package transfer.
    Transferred the package: (...)/tizen/Pilot.wgt -> /opt/usr/apps/tmp
[Stopping running application...]
[Installing the package...]
path is /opt/usr/apps/tmp/Pilot.wgt
start process …
Run Code Online (Sandbox Code Playgroud)

macos tizen tizen-web-app samsung-galaxy-gear tizen-wearable-sdk

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

如何在 ASP.NET Core 3.1 中访问 IAuthorizationHandler 中的会话数据?

我在自定义授权处理程序中访问会话数据有困难,而它在其他地方工作。

会话在控制器操作中正常工作,但是当我尝试使用IHttpContextAccessor.HttpContext.Sessiona访问它时MyAuthorizationHandler.HandleRequirementAsync,我收到InvalidOperationException“尚未为此应用程序或请求配置会话。”。在IHttpContextAccessor访问查询,饼干等-但无法访问会话数据。

如果我尝试从控制器访问相同MyAuthorizationHandlerIHttpContextAccessor,则会话数据可用。

MyAuthorizationHandler作为单例注入ConfigureServices,完整的初始化顺序:

public void ConfigureServices(IServiceCollection services)
{
    services.AddDistributedMemoryCache(); 
    services.AddSession(); 
    services.AddDefaultIdentity...
    services.AddControllersWithViews();
    services.AddRazorPages();
    services.AddControllers...
    services.AddAuthentication...
    services.AddAuthorization...
    services.AddHttpContextAccessor(); 
    services.AddSingleton<IAuthorizationHandler, MyAuthorizationHandler>(); 
    services.Configure<CookiePolicyOptions>...
    services.AddMvc(o => o.EnableEndpointRouting = false);
}

public void Configure(...)
{
    app.UseRouting();
    app.UseAuthentication();
    app.UseAuthorization();
    app.UseSession();
    app.UseEndpoints...
    app.UseMvc();
}
Run Code Online (Sandbox Code Playgroud)

注意:我不能在这个处理程序中使用声明,我需要会话数据。

c# asp.net-authorization asp.net-core asp.net-core-3.1

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

如何使用GUIStyle来实现EditorGUI.HelpBox外观?

我正在编写一个DecoratorDrawer允许对检查器中任何字段进行有意义的长篇描述。我的目标是这样的: 在此处输入图片说明
(伪装成金币)

那就是想要更浅的背景,圆角的边框等。

编辑器中有一些地方使用这种样式,例如,在光照贴图窗口中有两个实例: 选择了窗口小部件外观的lightmaper窗口

我不能使用,EditorGUI.HelpBox因为:

  1. 我无法可靠地测量内容的高度HelpBox。请注意,抽屉禁止使用EditorGUILayout

  2. 没有富文本或其他方式设置内容样式

  3. 不允许使用图片-我想稍后将它们作为一个选项

使用HelpBox它看起来像这样:

在此处输入图片说明


我的问题是:是否有允许以这种样式显示信息的硬编码GUIStyleUnityEditor/ UnityEditorInternal方法?如果没有,关于如何伪造这种风格的任何想法?如何制作圆角?请记住,有一个专业皮肤看起来不同,所以如果该解决方案在两个皮肤上都可以使用,那就太好了。

user-interface editor unity-game-engine inspector

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