小编Pan*_*vos的帖子

在Visual Studio 2015中实现接口时,使用#region自动包围生成的代码

我知道,在Visual Studio 2013和下方有开启/关闭的生成的代码自动包围了一个选项#regionTools > Options > Text Editor > C# > Advanced> Surround generated code with #region,但选择似乎在Visual Studio 2015中移除...

有没有办法重新开启?

c# visual-studio visual-studio-2015

23
推荐指数
1
解决办法
2146
查看次数

如何用下一行中的值替换空值

我的SQL查询代码中需要支持。我必须用下一行的非空值替换一列中的空值。

作为示例,我们可以使用以下代码:

declare   @value table (r# int, value varchar(15))
insert into @value ( r#, value ) values
 (1, NULL   ) ,
 (2, 'January'), 
 (3, 'February' ), 
 (4, NULL    ),
 (5, 'March'  ),
 (6, NULL    ),
(7, Null  ),
(8, 'December' ),
(9, Null ),
(10, Null  ),
(11, Null  ),
(12, 'November' ),
(13, Null )
select * from @value
Run Code Online (Sandbox Code Playgroud)

当我使用Lead函数时,会得到此值,但不适用于NULL。我需要得到的是:

1 January
2 January
3 February
4 March
5 March
6 December
7 December
8 December
9 November
10 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

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

ASP.NET 最小 API - 访问 IConfiguration

是否可以在新的 ASP.NET Minimal API 中访问 IConfiguration?我不认为有可能做这样的事情。

using Microsoft.AspNetCore.Components;
using MudBlazor.Services;

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();
...

builder.Services.AddMyServiceWithConfiguration(XXXX.Configuration);

var app = builder.Build();

....

app.Run();
Run Code Online (Sandbox Code Playgroud)

c# asp.net-core-6.0 .net-6.0 c#-10.0

21
推荐指数
1
解决办法
8738
查看次数

如何在.NET CORE中更改默认的ASP.NET标识表名称?

我已经开始使用.NET Core,在MVC 5中我更改了默认表名称,例如:AspNETUsers以这种方式运行到用户并且它运行良好:在IdentityModels类中我dded:

protected override void OnModelCreating(System.Data.Entity.DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);

        modelBuilder.Entity<IdentityUser>().ToTable("Users").Property(p => p.Id).HasColumnName("UserId");
        modelBuilder.Entity<ApplicationUser>().ToTable("Users").Property(p => p.Id).HasColumnName("UserId");
        modelBuilder.Entity<IdentityUserRole>().ToTable("UserRoles");
        modelBuilder.Entity<IdentityUserLogin>().ToTable("UserLogins");
        modelBuilder.Entity<IdentityUserClaim>().ToTable("UserClaims");
        modelBuilder.Entity<IdentityRole>().ToTable("Roles");
    }
Run Code Online (Sandbox Code Playgroud)

但它在.NET CORE(MVC 6)中不起作用.谁能帮我?非常感谢.

asp.net-mvc identity asp.net-core

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

没有可用于指定 RuntimeIdentifier 'browser-wasm' 的 Microsoft.AspNetCore.App 运行时包

尝试使用Microsoft 提供的本指南从 ASP.NET Core 3.1 迁移到 5.0 。

安装了带有运行时的 SDK 5.0.100-rc.1。按照指南更新项目,但仍然出现以下错误:

There was no runtime pack for Microsoft.AspNetCore.App available for the specified RuntimeIdentifier 'browser-wasm'
Run Code Online (Sandbox Code Playgroud)

项目文件:

<Project Sdk="Microsoft.NET.Sdk.BlazorWebAssembly">
    <PropertyGroup>
        <TargetFramework>net5.0</TargetFramework>
        <UserSecretsId>*****</UserSecretsId>
    </PropertyGroup>
...
Run Code Online (Sandbox Code Playgroud)

找不到与此错误相关的任何内容。我不知道在哪里搜索更多信息。

谢谢你的任何想法。

asp.net-core blazor blazor-client-side blazor-webassembly

19
推荐指数
5
解决办法
6270
查看次数

C#8默认接口实现是否允许多重继承

根据https://blogs.msdn.microsoft.com/dotnet/2018/11/12/building-c-8-0/,C#8中的一个新功能是接口的默认实现.这个新功能是否也隐含地允许多重继承?如果没有,如果我尝试以下操作将会发生什么:

public interface A { int Foo() => 1; }
public interface B { int Foo() => 2; }
public class C : A, B { }
Run Code Online (Sandbox Code Playgroud)

c# oop inheritance c#-8.0 default-interface-member

18
推荐指数
2
解决办法
1370
查看次数

取消解决方案或项目VS 2017的源代码管理

Visual Studio 2017中是否有一种方法可以从源代码管理中取消绑定解决方案或项目?我只能为旧版本找到这个问题的答案,这些旧版本建议进入File> Source Control,但是在此版本中似乎已删除了Source Control选项.

对于旧版本:

2010,2008,2005

git visual-studio

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

如何使用OAuth 2.0对Azure Active Directory进行身份验证?

我有一个用C#编写的REST API,我需要使用现有的Azure AD服务进行身份验证.我目前拥有希望进行身份验证的用户的用户名和密码.我需要使用Azure AD进行身份验证,并从服务器接收访问令牌.

有人可以指点我的一些文章/教程的方向,解释如何做到这一点?

c# authentication azure oauth-2.0 azure-active-directory

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

SqlConnection.CacheConnectionStringProperties()的.NET代码中的NullReferenceException

我面临着非常奇怪的问题.鉴于以下代码:

static void Main()
{
    var c = new System.Data.SqlClient.SqlConnection();

    c.ConnectionString = "Data Source=SOME_NAME;Initial Catalog=SOME_DB;Integrated Security=True";
    c.ConnectionString = ""; //null also triggers exception

    Console.WriteLine("Success");
}
Run Code Online (Sandbox Code Playgroud)

它运行良好很长一段时间,但在最新版本的Windows 10(1803)上有.NET版本4.7.03056版本461808(似乎是4.7.2)它崩溃了以下异常:

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Data.SqlClient.SqlConnection.CacheConnectionStringProperties()
   at System.Data.SqlClient.SqlConnection.set_ConnectionString(String value)
   at TestCacheConnectionStringProperties.Program.Main()
Run Code Online (Sandbox Code Playgroud)

这会在第二个任务中崩溃,如果我删除它的任何分配ConnectionString工作正常.

我查看了源代码并没有找到NullReferenceException可能发生的地方(但是.NET Framework 4.7.1似乎是源代码因此可能会改变).

现在问题是 - 导致这个问题的原因是什么?这是一个.NET错误吗?如果是 - 如何解决?

更新:根据评论 - 非常感谢伙计们 - 问题是由这些线引起的(反编译):

private void CacheConnectionStringProperties()
{
  SqlConnectionString connectionOptions = this.ConnectionOptions as SqlConnectionString;
  if (connectionOptions != …
Run Code Online (Sandbox Code Playgroud)

.net c# sqlconnection .net-4.7.2

14
推荐指数
1
解决办法
1046
查看次数

将 JSON 从对象序列化为字符串/DateOnly

我有一个来自对象的 JSON 调用:

 public record SaveDate(DateOnly StartDate, string EndDate, Object[] objects);
Run Code Online (Sandbox Code Playgroud)
var saveDate= new SaveDate(DateOnly.MinValue, DateTime.MaxValue.ToString("yyyy-MM-dd"), 
new Object[] { objects});
Run Code Online (Sandbox Code Playgroud)

当执行 API 调用时,它最终返回

{
    "startDate": {
        "year": 1,
        "month": 1,
        "day": 1,
        "dayOfWeek": 1,
        "dayOfYear": 1,
        "dayNumber": 0
    },
    "endDate": "2022-07-07",
    "Object": [
        {
            "foo": "bar"
                }
            ]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

但是我需要从 startDate 发送的格式与 endDate (“yyyy-MM-dd”)相同,而不是反序列化版本。我怎样才能做到这一点?

注意:我使用 DateOnly 作为类型 (.net 6.0),并且 API 需要采用上面指定的格式的字符串。

c# json json.net .net-6.0

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