2020年1月30日木曜日

WCFサービスを使用するサイトをhttps(SSL)対応しようとしたら、エラーが発生したThis collection already contains an address with scheme https. There can be at most one address per scheme in this collection. If your service is being hosted in IIS you can fix the problem by setting 'system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled' to true or specifying 'system.serviceModel/serviceHostingEnvironment/baseAddressPrefixFilters'.

エラーは、

This collection already contains an address with scheme https.  There can be at most one address per scheme in this collection. If your service is being hosted in IIS you can fix the problem by setting 'system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled' to true or specifying 'system.serviceModel/serviceHostingEnvironment/baseAddressPrefixFilters'.
Parameter name: item 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.ArgumentException: This collection already contains an address with scheme https.  There can be at most one address per scheme in this collection. If your service is being hosted in IIS you can fix the problem by setting 'system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled' to true or specifying 'system.serviceModel/serviceHostingEnvironment/baseAddressPrefixFilters'.
Parameter name: item

↓日本語に訳すると
このコレクションには既にスキームhttpsのアドレスが含まれています。このコレクションでは、スキームごとに最大1つのアドレスが存在できます。サービスがIISでホストされている場合、「system.serviceModel / serviceHostingEnvironment / multipleSiteBindingsEnabled」をtrueに設定するか、「system.serviceModel / serviceHostingEnvironment / baseAddressPrefixFilters」を指定することで問題を修正できます。
パラメーター名:アイテム
説明:現在のWeb要求の実行中に未処理の例外が発生しました。エラーの詳細とコードのどこで発生したかについては、スタックトレースを確認してください。

例外の詳細:System.ArgumentException:このコレクションには既にスキームhttpsのアドレスが含まれています。このコレクションでは、スキームごとに最大1つのアドレスが存在できます。サービスがIISでホストされている場合、「system.serviceModel / serviceHostingEnvironment / multipleSiteBindingsEnabled」をtrueに設定するか、「system.serviceModel / serviceHostingEnvironment / baseAddressPrefixFilters」を指定することで問題を修正できます。
パラメーター名:アイテム

です。エラーは、WCFサービスを複数のサービスで展開するなら、
multipleSiteBindingsEnabledを設定するか、baseAddressPrefixFiltersを設定するということです。

しかし、WCFサービスは1つしかないんだけどなぁって思いつつ、
multipleSiteBindingsEnabledをtrueにしたら、

When 'system.serviceModel / serviceHostingEnvironment / multipleSiteBindingsEnabled' is set to true in configuration, the endpoints are required to specify a relative address.If you are specifying a relative listen URI on the endpoint, then the address can be absolute.To fix this problem , specify a relative uri for endpoint

↓日本語訳
構成で「system.serviceModel / serviceHostingEnvironment / multipleSiteBindingsEnabled」がtrueに設定されている場合、エンドポイントは相対アドレスを指定する必要があります。エンドポイントで相対リッスンURIを指定している場合、アドレスは絶対にできます。 、エンドポイントの相対URIを指定します

というエラーになりました。

相対URIで指定って、設定が面倒じゃん。。。嘘だろ?って思いSSLの設定を確認していくと複数のバインドがありました!
この設定を見直して一つにしたら、無事解決しました。

↓問題の設定

2020年1月28日火曜日

.NET Coreのメモリ上限サイコーです。.NET Frameworkだと1オブジェクト2GBの制限がある。

昔、さるロジックでFile.ReadAllXXX()で苦労したことを思いだしました。

.NET Coreの場合、12.1GBのオブジェクトが使用できました。
   

.NET Frameworkの場合、1.5GBのオブジェクトとなっています。

補足
あくまでも1オブジェクトの最大サイズです。
それ以外のスコープでは別の制限となります。

検証ロジック
class OutOfMemory
{
internal void Run()
{
var c = EnumetableOutOfMemory().ToList().Count;
WriteLine($"Data Size={c}");
}

IEnumerable<int> EnumetableOutOfMemory()
{
while (true)
{
yield return 1;
}
}
}

そういえば、App.configを↓のようにして頑張ってメモリを多く使えるようにチャレンジしたこともあります。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
    </startup>
   <runtime>
     <gcAllowVeryLargeObjects enabled="true"/>
     <generatePublisherEvidence enabled="false"/>
     <legacyCorruptedStateExceptionsPolicy enabled="true"/>
     <loadFromRemoteSources enabled="true"/>
     <nodeRunnerSettings memoryLimitMegabytes="0"/>
     <NGenReserveForJumpStubs value="25" />
   </runtime>
</configuration>

2020年1月27日月曜日

XPS15 9570の休止状態(ハイバネーション)からの復旧が直った!

一年近く悩まされていた問題が直しました。

対応はBIOSのアップデイトです。
1.13から1.14へアップデイトしたら、直しました!
パソコンの持ち運びがはかどります。

2020年1月2日木曜日

Dell XPS 15 起動時に「Critial Error Message」が発生する

ミーティング中にBIOSレベルのエラーが画面が発生しました。

------------------------------------------------------------
Critial Error Message

Dell SupportAssist has detected a failing component on your system that requires immediate attention.
Go to https://suportassist.dell.com and enter he issue description below.

Video - User provided on input for graphics test Contine testing?


------------------------------------------------------------

Dell SupportAssistは、すぐに対応する必要があるシステム上の障害のあるコンポーネントを検出しました。
https://suportassist.dell.comにアクセスし、以下に問題の説明を入力してください。

グラフィックテストの入力でユーザーが提供した連続テスト?

------------------------------------------------------------