Posts

Where statement on a IAsyncEnumerable

If you would like to use a where statement on an IAsyncEnumerable like IAsyncEnumerable<company> companyAsyncEnum = _dataRepository.GetCampingsAsync(); var asyncFiltered = companyAsyncEnum.Where(c => c.Website != null && c.Website.Uri != null ); The following extension method will help you public static class AsyncFilterExtensions {     public static async IAsyncEnumerable Where< C >( this IAsyncEnumerable asyncEnum, Func bool > filter)    {         await foreach (var item in asyncEnum)     {         if (filter(item))                       yield return item;          }   } }

Migrate Azure Function app from .NET Core v2 to v3

For migrating an Azure Function app from .NET Core v2 to v3 follow the following steps Unload the Azure function project by right clicking the project and selecting unload. Change   <propertygroup>    <targetframework>netcoreapp2.2</targetframework>    <azurefunctionsversion>v2</azurefunctionsversion>   </propertygroup>           to   <propertygroup>     <targetframework>netcoreapp3.1</targetframework>     <azurefunctionsversion>v3</azurefunctionsversion>   </propertygroup> Reload the Azure function project by right clicking the unloaded project Update the Microsoft.NET.Sdk.Functions nuget package to version 3.0.2 or higher Update the Microsoft.Azure.WebJobs.Extensions (when installed) to version 4.0.0 or higher In the local.settings.json change the FUNCTIONS_EXTENSION_VERSION setting to "~3" When I for the first time tried to start the converted Azure function project I got the m

Migrate .NET Core v2 MVC app to v3

For migrating your .NET Core v2 MVC app to v3 use the following steps Change the .NET Core version of your web app to .NET Core v3.1 or higher Change your Startup.cs in your web root Remove the following line services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2); Add the following line to the ConfigureServices method services.AddControllersWithViews(); Change the signature of method from public void Configure(IApplicationBuilder app, IHostingEnvironment env) to public void Configure(IApplicationBuilder app, IWebHostEnvironment env) If you use a env.IsDevelopment() statement add the following in the top of your Startup.cs using Microsoft.Extensions.Hosting; Add the following lines to the bottom of your Configure method app.UseRouting(); app.UseCors(); Only add the following lines if you use authentication / authorization app.UseAuthentication(); app.UseAuthorization(); Convert your web routes from app.UseMvc(routes => {          routes.MapRoute(    

SQL Server Reporting Server (SSRS) websites give "Your TLS security settings aren't set to the defaults, which could also be causing this error.", how to fix this?

After a windows update on a Windows server we got the following error messages when navigating to the reporting webservices or Reporting management website. These sites where protected bij SSL. Your TLS security settings aren't set to the defaults, which could also be causing this error. After a deep investigation we tried to change the TLS settings in the registry and configure the cipher algoritemes. Nothing worked. In the end we removed the SSL certificate from the Reporting Service Configuration manager. Then we we added the same certificate again to the Web Service Url and Report Manager Url. That fixed all.

‘49% minder CO2-uitstoot in 2030’, hoe dan?!

Met enige regelmaat zie ik uitspraken van het kabinet dat Nederland in 2030 49% minder CO2 gaat uitstoten dan in 1990. Op mij komt dat over als redelijk ambitieus. Ik vraag me dan altijd af hoe reëel zo’n doel eigenlijk is. Tijd om dit eens verder te onderzoeken. Wat zegt het cabinet? Het streven: in 2030 een 49% lagere CO2-uitstoot dan in 1990. Op de website van het CLO (overheidswebsite met feiten en cijfers over milieu, natuur en ruimte in Nederland) staat dat de CO2-uitstoot in 1990 163,2 megaton was. Dat betekent dat de streefuitstoot aan CO2 in 2030 83,232 megaton is. Waar staan we nu? De laatste definitieve cijfers die ik op de site van het CLO kan vinden zijn voor het jaar 2014. In dat jaar bedraagt de CO2-uitstoot 158 megaton. Dat is een besparing van iets meer dan 3% in vergelijk met 1990. De CO2-uitstootcijfers van 2014 zijn per sector uitgewerkt: Landbouw: 7 megaton Industrie en energie: 94,8 megaton Verkeer en vervoer: 33,9 megaton Gebouw en omgeving: 22,3 meg

Voorstel voor nieuw stemsysteem

Bijna elk jaar ga ik braaf naar een stemlokaal om mijn stem met een rood potlood uit te brengen. Daarmee, en met het huidige stemsysteem zelf, is in mijn ogen behoorlijk wat mis: In deze internettijd het huis uit moeten om mijn stem uit te brengen, dat vind ik vreemd. Wát er met mijn stem gebeurt is onzeker. Zijn de stemtellers te vertrouwen? Slaan ze af en toe niet per ongeluk een stem over? Werkt het proces van optellen over het land correct? Zijn er kwade invloeden van buitenaf die een eigen draai (kunnen) geven aan de stemmen? Zijn onze stemmen te vertrouwen in de handen van de overheid? Dat is tenslotte een partij die toch veel belang heeft bij de uitkomst. Daarnaast is het huidige proces van onze democratie ook niet efficiënt. Als we nu eens de Tweede Kamerverkiezingen als voorbeeld nemen. Minimaal elke vier jaar breng ik hiervoor mijn stem uit. In Den Haag zijn ze dan eerst een half jaar bezig met het vormen van een coalitie. En deze periode van coalitievorming lijkt ste

Determine query cost in Gremlin.NET on Comos DB

I found it hard to find the query cost when using Gremlin.NET on Cosmos DB. The only way I found until now is to analyse the exception text when a RequestRateTooLargeException is thrown. Typically the most resource intensive queries throw these exceptions so it is interesting to analyse the query costs for these specific queries. ServerError: ActivityId : 3ae242d9-09bd-4870-8e0c-5f3b56941726 ExceptionType : RequestRateTooLargeException ExceptionMessage :  Message: {"Errors":["Request rate is large"]}  ActivityId: 3f4d0f5c-a776-4f41-ab9c-ee9f08d64ca4, Request URI:, RequestStats:  ResponseTime: 2018-03-26T06:57:58.4519869Z, StoreReadResult: StorePhysicalAddress: , GlobalCommittedLsn: 7393074, PartitionKeyRangeId: , IsValid: True, StatusCode: 0, IsGone: False, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0.38, ItemLSN: -1, ResourceType: Document, OperationType: Query  , SDK: documentdb-dotnet-sdk/1.20.0 Host/64-bit MicrosoftWindowsNT/6.2.92