[{"data":1,"prerenderedAt":232},["ShallowReactive",2],{"blog-index":3,"blog-sidebar-tags":224,"blog-sidebar-popular":225},{"posts":4,"count":223},[5,28,52,97,112,127,139,151,163,179,196,210],{"slug":6,"title":7,"subtitle":8,"opener":9,"tags":10,"date":14,"headerImage":15,"author":16,"images":15,"__typename":27},"radial-progress-css-animation","Radial progress with CSS","Implementing a CSS-only radial progress animation","Creating an animatable version of a progress bar as an overlay which can be utilized on top of any child content.",[11,12,13],"web","css","animation","2023-04-12T00:00:00Z",null,[17],{"id":18,"flatData":19,"__typename":26},"e417ff36-4933-45ce-96f9-5e6056ab658d",{"name":20,"image":21,"__typename":25},"Sebastian Greifeneder",[22],{"url":23,"__typename":24},"https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002F2112c3f2-541f-4cad-b072-9c0037873fcd\u002F","Asset","AuthorFlatDataDto","Author","PostsFlatDataDto",{"slug":29,"title":30,"subtitle":31,"opener":32,"tags":33,"date":39,"headerImage":40,"author":44,"images":15,"__typename":27},"load-testing-put-endpoints-with-apache-jmeter","Load testing PUT endpoints","With Apache JMeter and minimal APIs","Load testing PUT endpoints with Apache JMeter using ASP.NET Core minimal APIs as an example.",[34,35,36,37,38],"Performance","Apache JMeter","C#","Minimal APIs","ASP.NET","2023-01-03T00:00:00Z",[41],{"fileName":42,"url":43,"__typename":24},"julian-hochgesang-3-y9vq8uoxk-unsplash.jpg","https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002Fad44fc84-935c-4ab4-ab0e-9fbcb84fb2c1\u002F",[45],{"id":46,"flatData":47,"__typename":26},"0152e82d-a848-44f8-b0b8-fd8aec4b874a",{"name":48,"image":49,"__typename":25},"Christopher Dresel",[50],{"url":51,"__typename":24},"https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002F305bcd01-b811-4147-8947-e025b7966355\u002F",{"slug":53,"title":54,"subtitle":55,"opener":56,"tags":57,"date":65,"headerImage":66,"author":70,"images":75,"__typename":27},"iso-tc-211-plenary-vienna","54th ISO\u002FTC 211 Plenary Vienna","Standard in Action Seminar","Presenting our SDI-as-a-Service solution during the 54th ISO\u002FTC 211 Plenary.",[58,59,60,61,62,63,64],"iso","ogc","tc211","wms","wfs","standards","geo","2022-05-16T00:00:00Z",[67],{"fileName":68,"url":69,"__typename":24},"IMG_0136.JPEG","https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002Fc358a9fd-3e6c-459e-8269-b9df50e96fb0\u002F",[71],{"id":18,"flatData":72,"__typename":26},{"name":20,"image":73,"__typename":25},[74],{"url":23,"__typename":24},[76,85,91],{"fileName":68,"url":69,"metadata":77,"__typename":24},{"created":78,"latitude":79,"longitude":80,"pixelWidth":81,"description":82,"pixelHeight":83,"imageQuality":84},"2022-05-11T12:55:58",48.22924166666667,16.45606111111111,2048,"JFIF File",1536,93,{"fileName":86,"url":87,"metadata":88,"__typename":24},"IMG_0143.JPEG","https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002Ff32dab86-93d8-4cd9-a960-3e6a4b4e48bf\u002F",{"created":89,"latitude":79,"longitude":90,"pixelWidth":83,"description":82,"pixelHeight":81,"imageQuality":84},"2022-05-11T13:49:33",16.456105555555556,{"fileName":92,"url":93,"metadata":94,"__typename":24},"IMG_0144.JPEG","https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002F305417c2-3513-4f10-bcf3-f59719747982\u002F",{"created":95,"latitude":79,"longitude":96,"pixelWidth":81,"description":82,"pixelHeight":83,"imageQuality":84},"2022-05-11T13:52:44",16.45608611111111,{"slug":98,"title":99,"subtitle":100,"opener":101,"tags":102,"date":106,"headerImage":15,"author":107,"images":15,"__typename":27},"removing-infrastructure-information-from-domain-code-5","Removing infrastructure information from domain code - Part 5","Dealing with readonly collections","Keep navigation properties of type IReadOnlyCollection\u003CT> small and simple with SpatialFocus.EFLazyLoading.Fody.",[103,36,104,105],"DDD","EF","Clean code","2021-07-30T00:00:00Z",[108],{"id":46,"flatData":109,"__typename":26},{"name":48,"image":110,"__typename":25},[111],{"url":51,"__typename":24},{"slug":113,"title":114,"subtitle":115,"opener":116,"tags":117,"date":118,"headerImage":15,"author":119,"images":15,"__typename":27},"removing-infrastructure-information-from-domain-code-4","Removing infrastructure information from domain code - Part 4","Always ensure tracked entities for navigation properties operations","Ensure entities are always tracked for navigation properties operations by implementing a custom LazyLoadingIntercepter.",[103,36,104,105],"2021-04-14T00:00:00Z",[120],{"id":121,"flatData":122,"__typename":26},"247edfce-2ecf-40b8-87e1-58e549d0c243",{"name":123,"image":124,"__typename":25},"Christoph Perger",[125],{"url":126,"__typename":24},"https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002F967c15d7-bd4a-4d6e-9e34-b891dccb9906\u002F",{"slug":128,"title":129,"subtitle":130,"opener":131,"tags":132,"date":133,"headerImage":15,"author":134,"images":15,"__typename":27},"removing-infrastructure-information-from-domain-code-3","Removing infrastructure information from domain code - Part 3","Getting rid of the private setters","Eliminating the need of adding private setters to bind read-only properties by using IL weaving and the Fody plugin SpatialFocus.AddSetter.Fody.",[103,36,104,105],"2021-04-09T00:00:00Z",[135],{"id":121,"flatData":136,"__typename":26},{"name":123,"image":137,"__typename":25},[138],{"url":126,"__typename":24},{"slug":140,"title":141,"subtitle":142,"opener":143,"tags":144,"date":145,"headerImage":15,"author":146,"images":15,"__typename":27},"removing-infrastructure-information-from-domain-code-2","Removing infrastructure information from domain code - Part 2","Getting rid of the empty constructor","Eliminating the need of adding an empty constructor to bind navigation properties by using IL weaving and the Fody plugin EmptyConstructor.Fody.",[103,36,104,105],"2021-04-03T00:00:00Z",[147],{"id":121,"flatData":148,"__typename":26},{"name":123,"image":149,"__typename":25},[150],{"url":126,"__typename":24},{"slug":152,"title":153,"subtitle":154,"opener":155,"tags":156,"date":157,"headerImage":15,"author":158,"images":15,"__typename":27},"removing-infrastructure-information-from-domain-code-1","Removing infrastructure information from domain code - Part 1","Getting rid of the virtual keyword","Eliminating the need of using the virtual keyword in lazy loaded navigation properties by using IL weaving and the Fody plugin Virtuosity.",[103,36,104,105],"2021-03-11T00:00:00Z",[159],{"id":121,"flatData":160,"__typename":26},{"name":123,"image":161,"__typename":25},[162],{"url":126,"__typename":24},{"slug":164,"title":165,"subtitle":15,"opener":166,"tags":167,"date":169,"headerImage":170,"author":174,"images":15,"__typename":27},"working-with-file-geodatabase-in-csharp-3","Working with File Geodatabase using GDAL\u002FOGR in C# - Part 3","The third part of this blog series is going into more detail and will show a couple of real life examples how to extract data from a File Geodatabase using data sampling strategies of different complexities.",[168,36],"Geo","2020-10-19T00:00:00Z",[171],{"fileName":172,"url":173,"__typename":24},"gdb-ua2012.png","https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002Fd99f43f5-59a9-42e3-bafa-20901048c80c\u002F",[175],{"id":121,"flatData":176,"__typename":26},{"name":123,"image":177,"__typename":25},[178],{"url":126,"__typename":24},{"slug":180,"title":181,"subtitle":15,"opener":182,"tags":183,"date":186,"headerImage":187,"author":191,"images":15,"__typename":27},"bringing-net-extensions-to-xamarin-forms","Bringing .NET extensions to Xamarin.Forms","This blog post will show you a way of integrating configuration, dependency injection, logging and localization of the .NET extensions stack into your Xamarin.Forms application.",[184,185,36],"Mobile","Xamarin.Forms","2020-09-28T00:00:00Z",[188],{"fileName":189,"url":190,"__typename":24},"background.png","https:\u002F\u002Fcms.spatial-focus.net\u002Fapi\u002Fassets\u002Fspatialfocus\u002F9711d050-3ff9-4abe-8822-47d04dfe4d47\u002F",[192],{"id":46,"flatData":193,"__typename":26},{"name":48,"image":194,"__typename":25},[195],{"url":51,"__typename":24},{"slug":197,"title":198,"subtitle":199,"opener":200,"tags":201,"date":202,"headerImage":203,"author":205,"images":15,"__typename":27},"working-with-file-geodatabase-in-csharp-2","Working with File Geodatabase using GDAL\u002FOGR in C# - Part 2","","The second part of this blog series is looking into reading the actual data within a File Geodatabase. We will explore how to access both the attribute as well as the spatial data of a vector layer and build some indexes, that will be used later.",[168,36],"2020-08-28T00:00:00Z",[204],{"fileName":172,"url":173,"__typename":24},[206],{"id":121,"flatData":207,"__typename":26},{"name":123,"image":208,"__typename":25},[209],{"url":126,"__typename":24},{"slug":211,"title":212,"subtitle":15,"opener":213,"tags":214,"date":215,"headerImage":216,"author":218,"images":15,"__typename":27},"working-with-file-geodatabase-in-csharp-1","Working with File Geodatabase using GDAL\u002FOGR in C# - Part 1","The first part of this blog series is providing some background information and lays the basis for working with the ESRI File Geodatabase data format for geospatial data.",[168,36],"2020-08-05T00:00:00Z",[217],{"fileName":172,"url":173,"__typename":24},[219],{"id":121,"flatData":220,"__typename":26},{"name":123,"image":221,"__typename":25},[222],{"url":126,"__typename":24},12,[36,103,104,105,168,34],[226,229],{"slug":29,"title":30,"headerImage":227,"__typename":27},[228],{"url":43,"__typename":24},{"slug":53,"title":54,"headerImage":230,"__typename":27},[231],{"url":69,"__typename":24},1782065699352]