タグ付けされた質問 「.net-core」

.NET Coreは、.NET Frameworkの後継オープンソースです。サーバーやデータセンターからアプリやデバイスに至るまで、さまざまなアプリケーションや業種で使用できます。.NET Coreは、Windows、Linux、およびmacOS上のMicrosoftでサポートされています。

2
Entity Framework CoreモデルでC#8.0 Nullable参照型を使用する方法
.NET Core 3.0プロジェクトでC#8.0 Nullable参照型を有効にしています。プロジェクトはEntity Framework Core 3.0を使用してデータベースにアクセスします。 以下は、タイトルがnullであってはならないデータモデルです。 public class Vehicle { public int Id { get; private set; } public string Title { get; private set; } // Entity Framework Core is instructed to bind to the private _drivers field in a configuration builder private readonly List<Driver> _drivers = …

3
.Net Core 3.1はAzure Pipelinesのホストエージェントでまだサポートされていませんか?NETSDK1045の入手
.Net Core 3.1がリリースされたことは素晴らしいことですが、Azure Pipelinesのホストされたエージェントが追いついているかどうかはわかりません。 私のYAMLパイプラインは次を指定します: pool: vmImage: 'windows-latest' そしてdotnet restoreステップはこれを行います: (_CheckForUnsupportedNETCoreVersion target)-> C:\ Program Files \ dotnet \ sdk \ 3.0.100 \ Sdks \ Microsoft.NET.Sdk \ targets \ Microsoft.NET.TargetFrameworkInference.targets(127,5):error NETSDK1045:the current .NET SDKは、.NET Core 3.1のターゲットをサポートしていません。.NET Core 3.0以下をターゲットにするか、.NET Core 3.1をサポートするバージョンの.NET SDKを使用してください。[D:\ a \ 1 \ s \ StatsNZ.BESt.DataService \ StatsNZ.BESt.DataService.csproj] .Net …

3
Task.WhenAllの継続が同期的に実行されるのはなぜですか?
Task.WhenAll.NET Core 3.0で実行しているときに、私はメソッドについて奇妙な観察をしました。単純なTask.Delayタスクを単一の引数としてに渡しましたTask.WhenAllが、ラップされたタスクは元のタスクと同じように動作するはずです。しかし、そうではありません。元のタスクの継続は非同期で実行され(これは望ましい)、複数のTask.WhenAll(task)ラッパーの継続は1つずつ同期して実行されます(これは望ましくありません)。 ここでデモこの動作のは。4つのワーカータスクが同じTask.Delayタスクが完了するのを待ってから、重い計算(でシミュレートThread.Sleep)を続行します。 var task = Task.Delay(500); var workers = Enumerable.Range(1, 4).Select(async x => { Console.WriteLine($"{DateTime.Now:HH:mm:ss.fff}" + $" [{Thread.CurrentThread.ManagedThreadId}] Worker{x} before await"); await task; //await Task.WhenAll(task); Console.WriteLine($"{DateTime.Now:HH:mm:ss.fff}" + $" [{Thread.CurrentThread.ManagedThreadId}] Worker{x} after await"); Thread.Sleep(1000); // Simulate some heavy CPU-bound computation }).ToArray(); Task.WaitAll(workers); これが出力です。4つの継続は、異なるスレッドで(並列に)期待どおりに実行されています。 05:23:25.511 [1] Worker1 before await 05:23:25.542 …

3
列挙型は.Net core 3.0 FromBodyリクエストオブジェクトで機能しなくなりました
最近、web apiを.Net core 2.2から.Net core 3.0にアップグレードしましたが、ポストの列挙型をエンドポイントに渡すと、リクエストでエラーが発生することに気付きました。例えば: 私のAPIエンドポイントには次のモデルがあります。 public class SendFeedbackRequest { public FeedbackType Type { get; set; } public string Message { get; set; } } FeedbackTypeは次のようになります。 public enum FeedbackType { Comment, Question } そしてこれはコントローラメソッドです: [HttpPost] public async Task<IActionResult> SendFeedbackAsync([FromBody]SendFeedbackRequest request) { var response = await _feedbackService.SendFeedbackAsync(request); return Ok(response); } …

1
エラー:インストールされている.NET Core SDKを見つけることができませんでした
コマンドを実行すると、docker run -i -t myProjectエラーが表示されます。 インストールされている.NET Core SDKを見つけることができませんでした。.NET Core SDKコマンドを実行するつもりでしたか?https://aka.ms/dotnet-downloadから.NET Core SDKをインストールします 。 しかし、私は.NET Core SDKをインストールしており、これPATHは正しいです(以下に続きます:https : //docs.microsoft.com/en-us/aspnet/core/test/troubleshoot?view=aspnetcore-3.1#no-net -core-sdks-were-detected)。 さらに、私のプロジェクトに必要なのはランタイム.NET Core SDKだけです。 誰が問題になるのか知っていますか? dotnet --infoを実行すると、次のようになります。 .NET Core SDK(global.jsonを反映):バージョン:3.1.101コミット:b377529961 ランタイム環境:OS名:Windows OSバージョン:10.0.18363 OSプラットフォーム:Windows RID:win10-x86ベースパス:C:\ Program Files(x86)\ dotnet \ sdk \ 3.1.101 \ ホスト(サポートに便利):バージョン:3.1.1コミット:a1388f194c インストールされている.NET Core SDK:3.1.101 [C:\ Program Files(x86)\ dotnet \ sdk] …
13 docker  .net-core 

2
.NET Core 3.0 Entity Frameworkでグループ参加を実行するにはどうすればよいですか?
.NET Core 3.0の変更により、 ... NavigationExpandingExpressionVisitor 'が失敗しました。これは、EF Coreのバグまたは制限を示している可能性があります。詳細については、https://go.microsoft.com/fwlink/?linkid = 2101433を参照して ください。)---> System.InvalidOperationException:LINQ式 'GroupJoin、...の処理 これは非常に単純なクエリなので、.NET CORE 3.0で実行する方法が必要です。 var queryResults1 = await patients .GroupJoin( _context.Studies, p => p.Id, s => s.Patient.Id, (p, studies) => new { p.DateOfBirth, p.Id, p.Name, p.Sex, Studies =studies.Select(s1=>s1) } ) .AsNoTracking().ToListAsync(); 私は基本的に、Studyを患者に結合するLinqクエリ(または上記のメソッド構文)を探しており、Studyを空のリストに設定するか、特定の患者のスタディがない場合はnullを設定します。 何か案は?これは.NET Core 2.2で機能していました。また、上記のMSFTリンクは、重要な変更がクライアント側の評価に関連しており、生成されたクエリがテーブル全体を読み取ることを回避していることを示しています。ただし、この単純なクエリでは、結合はサーバー側で簡単に実行できるはずです。

3
指定されたフレームワーク 'Microsoft.NETCore.App'、バージョン '2.2.0'が見つかりませんでした
Visual Studio 2019バージョン16.3.7を使用しています。最新のアップデートだと思います。 基本的な.NET Core 2.2コンソールアプリケーションをコンパイルしようとすると: ...次のエラーが表示されます: It was not possible to find any compatible framework version The specified framework 'Microsoft.NETCore.App', version '2.2.0' was not found. - The following frameworks were found: 1.0.1 at [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 2.0.9 at [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 2.1.11 at [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 2.1.12 at [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 2.1.13 at …

3
Entity Framework Coreの強く型付けされたID
私は強く型付けされたIdクラスを作ろうとしていますが、これは内部で「long」を保持しています。以下の実装。私のエンティティでこれを使用している問題は、Entity Frameworkから、プロパティIDが既にマッピングされているというメッセージが表示されることです。IEntityTypeConfiguration以下を参照してください。 注:私は厳密なDDD実装を目指していません。したがって、コメントや回答の際には、このことを覚えておいてください。型付けの背後にあるID全体Idは、すべてのエンティティでIdを使用するように強く型付けされているプロジェクトにアクセスする開発者向けです。もちろんlong(またはBIGINT)に翻訳されますが、他の人にとっては明らかです。 動作しないクラスと構成の下。リポジトリはhttps://github.com/KodeFoxx/Kf.CleanArchitectureTemplate.NetCore31にあります。 Id(現在コメントアウトされている)のクラス:https : //github.com/KodeFoxx/Kf.CleanArchitectureTemplate.NetCore31/blob/master/Source/Common/Kf.CANetCore31/DomainDrivenDesign/Id.cs EntityおよびValueObjectクラス(EntityプロパティIdのタイプはId.cs(上)でした:https : //github.com/KodeFoxx/Kf.CleanArchitectureTemplate.NetCore31/tree/master/Source/Common/Kf.CANetCore31/DomainDrivenDesign 構成:https : //github.com/KodeFoxx/Kf.CleanArchitectureTemplate.NetCore31/tree/master/Source/Infrastructure/Persistence/Kf.CANetCore31.Infrastructure.Persistence.Ef/EntityTypeConfigurations Idクラスの実装(これは解決策が見つかるまでアイデアを放棄したため、現在は使用されていません) namespace Kf.CANetCore31.DomainDrivenDesign { [DebuggerDisplay("{DebuggerDisplayString,nq}")] [Obsolete] public sealed class Id : ValueObject { public static implicit operator Id(long value) => new Id(value); public static implicit operator long(Id value) => value.Value; public static implicit operator Id(ulong value) => …

5
System.Text.Json.JsonSerializerのデフォルトオプションをグローバルに設定する方法
更新[2019-12-23]: ボーカルコミュニティの入力に一部起因して、この問題は.NET 5.0のロードマップに追加されました。 更新[2019-10-10]: この動作の実装を確認したい場合System.Text.Json.JsonSerializerオーバーの頭オープンGitHubの問題が指摘クリスYungmannとで重量を量ります。 これの代わりに: JsonSerializerOptions options = new JsonSerializerOptions { PropertyNamingPolicy = JsonNamingPolicy.CamelCase // etc. }; JsonSerializer.Deserialize<SomeObject>(someJsonString, options); 私はこのようなことをしたいと思います: // This property is a pleasant fiction JsonSerializer.DefaultSettings = new JsonSerializerOptions { PropertyNamingPolicy = JsonNamingPolicy.CamelCase // etc. }; // This uses my options JsonSerializer.Deserialize<SomeObject>(someJsonString); // And somewhere else in …

6
CORSポリシーと.NET Core 3.1に関する問題
何が欠けているのかはわかりませんが、.NET Core 3.1およびAngular 8クライアント側でCORSポリシーを機能させることができません。 Startup.cs: public void ConfigureServices(IServiceCollection services) { // ... // Add CORS policy services.AddCors(options => { options.AddPolicy("foo", builder => { // Not a permanent solution, but just trying to isolate the problem builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader(); }); }); services.AddControllers(); } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment()) { …

2
WPFアプリの.NET Core 3.0でSystem.Windows.Formsを参照する方法
WPFデスクトップアプリを.NET FramworkからCore 3.0に移行しています。System.Windows.Forms.FolderBrowserDialog()を使用していて、この参照をCoreプロジェクトに追加する方法に行き詰まっています。"System.Windows.Forms" NuGetパッケージはありませんか?コアでFolderBrowserDialogを表示する別の方法はありますか? 更新 デフォルトのテンプレートを使用してコアプロジェクトを作成し、貼り付けた.csファイルと.xamlファイルをそのプロジェクトにコピーしました。.csprojファイルは次のようになります。 <Project Sdk="Microsoft.NET.Sdk.WindowsDesktop"> <PropertyGroup> <OutputType>WinExe</OutputType> <TargetFramework>netcoreapp3.0</TargetFramework> <UseWPF>true</UseWPF> </PropertyGroup>


4
System.Text.Jsonを使用してリストを非同期に逆シリアル化する
多くのオブジェクトのリストを含む大きなjsonファイルを要求するとします。一度にメモリに保存したくはありませんが、1つずつ読み取って処理したいと思います。したがって、非同期System.IO.Streamストリームをに変換する必要がありIAsyncEnumerable<T>ます。新しいSystem.Text.JsonAPIを使用してこれを行うにはどうすればよいですか? private async IAsyncEnumerable<T> GetList<T>(Uri url, CancellationToken cancellationToken = default) { using (var httpResponse = await httpClient.GetAsync(url, cancellationToken)) { using (var stream = await httpResponse.Content.ReadAsStreamAsync()) { // Probably do something with JsonSerializer.DeserializeAsync here without serializing the entire thing in one go } } }

3
.NET Core 3シングルファイルアプリを取得してappsettings.jsonファイルを見つけるにはどうすればよいですか?
単一ファイルの.Net Core 3.0 Web APIアプリケーションappsettings.jsonは、単一ファイルアプリケーションのビルド先と同じディレクトリにあるファイルを検索するようにどのように構成する必要がありますか? 実行した後 dotnet publish -r win-x64 -c Release /p:PublishSingleFile=true ディレクトリは次のようになります。 XX/XX/XXXX XX:XX PM <DIR> . XX/XX/XXXX XX:XX PM <DIR> .. XX/XX/XXXX XX:XX PM 134 appsettings.json XX/XX/XXXX XX:XX PM 92,899,983 APPNAME.exe XX/XX/XXXX XX:XX PM 541 web.config 3 File(s) 92,900,658 bytes ただし、実行しようとするAPPNAME.exeと、次のエラーが発生します。 An exception occurred, System.IO.FileNotFoundException: The configuration …

1
Powershellで実行しているときとVisual Studioで実行しているときのHttpClient同時動作が異なる
B2Cでユーザーを作成するためにMS Graph APIを使用して、数百万のユーザーをオンプレミスADからAzure AD B2Cに移行しています。この移行を実行するための.Net Core 3.1コンソールアプリケーションを作成しました。速度を上げるために、Graph APIを同時に呼び出しています。これはうまく機能しています。 開発中にVisual Studio 2019から実行しているときに許容できるパフォーマンスを体験しましたが、テストのためにPowershell 7のコマンドラインから実行しています。Powershellから、HttpClientへの同時呼び出しのパフォーマンスは非常に悪いです。Powershellからの実行時にHttpClientが許可する同時呼び出しの数には制限があるため、40から50を超える同時バッチでの要求がスタックし始めます。残りをブロックしている間、40から50の同時リクエストを実行しているようです。 私は非同期プログラミングの支援を探していません。Visual Studioの実行時の動作とPowershellコマンドラインの実行時の動作の違いをトラブルシューティングする方法を探しています。Visual Studioの緑の矢印ボタンからリリースモードで実行すると、期待どおりに動作します。コマンドラインからの実行ではできません。 タスクリストに非同期呼び出しを入力し、Task.WhenAll(tasks)を待ちます。各呼び出しには300〜400ミリ秒かかります。Visual Studioから実行すると、期待どおりに動作します。私は1000の呼び出しの同時バッチを作成し、それぞれが予想時間内に個別に完了します。タスクブロック全体は、最長の個々の呼び出しよりも数ミリ秒長くかかります。 Powershellコマンドラインから同じビルドを実行すると、動作が変わります。最初の40から50の呼び出しは、予想される300から400ミリ秒かかりますが、その後、個々の呼び出し時間はそれぞれ最大20秒になります。呼び出しはシリアル化されていると思うので、他の呼び出しが待機している間、一度に実行されるのは40〜50だけです。 何時間もの試行錯誤の末、HttpClientに絞り込むことができました。問題を特定するために、Task.Delay(300)を実行してモック結果を返すメソッドを使用して、HttpClient.SendAsyncの呼び出しをモック化しました。この場合、コンソールからの実行は、Visual Studioからの実行と同じように動作します。 私はIHttpClientFactoryを使用していますが、ServicePointManagerの接続制限を調整しようとしました。 これが私の登録コードです。 public static IServiceCollection RegisterHttpClient(this IServiceCollection services, int batchSize) { ServicePointManager.DefaultConnectionLimit = batchSize; ServicePointManager.MaxServicePoints = batchSize; ServicePointManager.SetTcpKeepAlive(true, 1000, 5000); services.AddHttpClient(MSGraphRequestManager.HttpClientName, c => { c.Timeout = TimeSpan.FromSeconds(360); c.DefaultRequestHeaders.Add("User-Agent", "xxxxxxxxxxxx"); }) …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.