<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>ASP.NET on InternetException</title><link>https://internetexception.com/categories/asp.net/</link><description>Recent content in ASP.NET on InternetException</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 31 Oct 2025 09:49:42 +0100</lastBuildDate><atom:link href="https://internetexception.com/categories/asp.net/index.xml" rel="self" type="application/rss+xml"/><item><title>Enhancing your .NET API with query language</title><link>https://internetexception.com/2025/10/30/enhancing-your-net-api-with-query-language/</link><pubDate>Thu, 30 Oct 2025 21:14:03 +0100</pubDate><guid>https://internetexception.com/2025/10/30/enhancing-your-net-api-with-query-language/</guid><description>&lt;p&gt;What is query language? SQL is Structured Query Language and you use it to query your database for data you are interested in. It does not have to do anything with your API. If you ever were working with big XML files you probably used XQuery or XPath, query languages designed to XML for data. There are specialized languages that are designed to work with APIs to query &lt;strong&gt;them&lt;/strong&gt; for data. For example, you probably heard about GraphQL or even used it when you were working with some API.&lt;/p&gt;</description></item><item><title>HLinq design</title><link>https://internetexception.com/2025/10/28/hlinq-design/</link><pubDate>Tue, 28 Oct 2025 21:14:55 +0100</pubDate><guid>https://internetexception.com/2025/10/28/hlinq-design/</guid><description>&lt;h2 id="a-bit-of-history"&gt;A bit of history&lt;/h2&gt;&#10;&lt;p&gt;I remember the day when I started writing the HLinq query language. It was weekend and I was experimenting with writing Single endpoints for &lt;a href="https://internetexception.com/2013/02/07/why-i-dont-like-python-anymore/" data-type="post" data-id="228"&gt;Hamster Wheel.&lt;/a&gt; Single endpoints were almost done and next step was to write List endpoint. This would allow to get list of records of specific type. After I got single GET returns correct data for chosen record id, list should not be hard to implement. Then just create, update and delete. Basic CRUD API in Hamster Wheel would be finished. I was thrilled that I actually was able to do such thing.&lt;/p&gt;</description></item><item><title>Owin model and Kestrell request handling</title><link>https://internetexception.com/2022/10/24/owin-model-and-kestrell-request-handling/</link><pubDate>Mon, 24 Oct 2022 15:23:02 +0200</pubDate><guid>https://internetexception.com/2022/10/24/owin-model-and-kestrell-request-handling/</guid><description>&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;OWIN&lt;/strong&gt; - Open Web Interface for .NET&lt;/li&gt;&#10;&lt;li&gt;allows web apps to be decoupled from web servers&lt;/li&gt;&#10;&lt;li&gt;defines standard way for middleware to be used in a pipeline to handle requests and provide responses&lt;/li&gt;&#10;&lt;li&gt;ASP.NET Core applications can interoperate with OWIN-based applications, servers and middleware&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;Microsoft.AspNetCore.Owin package provides two adapter implementations:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;ASP.NET Core to OWIN&lt;/li&gt;&#10;&lt;li&gt;OWIN to ASP.NET Core&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;This allows ASP.NET Core to be hosted on top of an OWIN compatible server/host or for other OWIN compatible components to be run on top of ASP.NET Core.&lt;/p&gt;</description></item><item><title>Ninject and WCF</title><link>https://internetexception.com/2013/05/26/ninject-and-wcf/</link><pubDate>Sun, 26 May 2013 12:01:00 +0200</pubDate><guid>https://internetexception.com/2013/05/26/ninject-and-wcf/</guid><description>&lt;p&gt;Ninject is very simple and in the same time powerful IoC container. I used it in few project and had very little or none problems. Most of the time getting instances from Ninject kernel requires simple line with binding expression, or even this is sometime unnecessary if type is self bind able (i.e. if it is concrete class with parameterless constructor). Little harder is getting Ninject to work with WCF. You cannot just bind interfaces types because proxies which implements them are created through .NET mechanism. Luckily WCF system is very flexible and mostly can be changed/extended with custom functionality.&lt;/p&gt;</description></item><item><title>Server controls in separete assembly part 2</title><link>https://internetexception.com/2012/12/24/server-controls-in-separete-assembly-part-2/</link><pubDate>Mon, 24 Dec 2012 05:14:00 +0100</pubDate><guid>https://internetexception.com/2012/12/24/server-controls-in-separete-assembly-part-2/</guid><description>&lt;p&gt;&lt;a href="https://internetexception.com/2012/12/22/server-controls-in-separate-assembly/"&gt;Yesterday I was writing about creating server controls in separate assembly&lt;/a&gt;&#10;. Today I will cover more complicated example then simple &amp;ldquo;Hello World!&amp;rdquo; control. My goal was to create text box that will take handler method to run when validation event will be triggered, and when validation fail will show appropriate message. Text box with builtin validation would be nice, since &lt;a href="http://searchsoftwarequality.techtarget.com/tip/The-importance-of-input-validation" target="_blank" rel="noopener noreferrer"&gt;you always&lt;/a&gt;&#10; &lt;a href="http://www.ibm.com/developerworks/library/l-sp2/index.html" target="_blank" rel="noopener noreferrer"&gt;should&lt;/a&gt;&#10; &lt;a href="http://web.securityinnovation.com/appsec-weekly/blog/?Tag=Input%20and%20Data%20Validation" target="_blank" rel="noopener noreferrer"&gt;validate&lt;/a&gt;&#10; &lt;a href="http://www.securityninja.co.uk/secure-development/input-validation/" target="_blank" rel="noopener noreferrer"&gt;user input&lt;/a&gt;&#10;, right? But lets start creating our control.&lt;/p&gt;</description></item><item><title>Server controls in separate assembly</title><link>https://internetexception.com/2012/12/22/server-controls-in-separate-assembly/</link><pubDate>Sat, 22 Dec 2012 14:52:00 +0100</pubDate><guid>https://internetexception.com/2012/12/22/server-controls-in-separate-assembly/</guid><description>&lt;p&gt;In my project I wanted to create text box control with builtin configurable validation. ASP.NET definition in &lt;code&gt;.aspx&lt;/code&gt; or &lt;code&gt;.ascx&lt;/code&gt; file would get validation function by name. But I do not wanted to create just &lt;code&gt;.ascx&lt;/code&gt; file with text box. I could not then reuse that control in other projects and it certainly would be nice, right? Creating such server control from code is not hard, but maintainability of HTML code in C# (it cannot be done other way) is not good. It&amp;rsquo;s pain really. Why Microsoft would create way to automatically create C# code from &lt;code&gt;.ascx&lt;/code&gt;, &lt;code&gt;.aspx&lt;/code&gt; files is mystery for me.&lt;/p&gt;</description></item><item><title>Handling Ajax errors in ASP.NET</title><link>https://internetexception.com/2012/12/22/handling-ajax-errors-in-asp-net/</link><pubDate>Sat, 22 Dec 2012 09:58:00 +0100</pubDate><guid>https://internetexception.com/2012/12/22/handling-ajax-errors-in-asp-net/</guid><description>&lt;p&gt;Yesterday I wrote about &lt;a href="https://internetexception.com/2012/12/21/global-updatepanel-loading-indicator-in-asp-net/"&gt;issue with Ajax postbacks&lt;/a&gt;&#10; in application I am working currently. Problem was with buttons that was triggering &lt;code&gt;UpdatePanels&lt;/code&gt; to update asynchronously. After adding loading indicator I wanted to add error handling at client side.&lt;/p&gt;</description></item><item><title>Global UpdatePanel loading indicator in ASP.NET</title><link>https://internetexception.com/2012/12/21/global-updatepanel-loading-indicator-in-asp-net/</link><pubDate>Fri, 21 Dec 2012 10:48:00 +0100</pubDate><guid>https://internetexception.com/2012/12/21/global-updatepanel-loading-indicator-in-asp-net/</guid><description>&lt;p&gt;When I started working on application I am working right now, one of first things I noticed, that was not entirely wrong but was inconvenient: when user clicked on some button that triggers update panel you was not entirely sure it worked or not. Why? Because of three things:&lt;/p&gt;</description></item><item><title>Better algorithm for finding UpdatePanel that will be updated during page request.</title><link>https://internetexception.com/2012/12/13/better-algorithm-for-finding-updatepanel-that-will-be-updated-during-page-request/</link><pubDate>Thu, 13 Dec 2012 15:50:00 +0100</pubDate><guid>https://internetexception.com/2012/12/13/better-algorithm-for-finding-updatepanel-that-will-be-updated-during-page-request/</guid><description>&lt;p&gt;Other day I was experimenting with finding which &lt;a href="https://internetexception.com/2012/12/10/display-message-on-client-from-anywhere-in-code-with-asp-net/"&gt;UpdatePanel will be updated during page post back.&lt;/a&gt;&#10; I found out that my solution was not working correctly for complex triggers, like user controls with custom events, which will trigger async postbacks and update of panel. Or for grids with buttons. It was big issue. Also it was not pointing to correct &lt;code&gt;UpdatePanel&lt;/code&gt; if name of control was not entirely unique (for example when you have multiple same custom controls on page). It would return first panel, even if it wasn&amp;rsquo;t updating.&lt;/p&gt;</description></item><item><title>Display message on client from anywhere in code with ASP.NET</title><link>https://internetexception.com/2012/12/10/display-message-on-client-from-anywhere-in-code-with-asp-net/</link><pubDate>Mon, 10 Dec 2012 09:20:00 +0100</pubDate><guid>https://internetexception.com/2012/12/10/display-message-on-client-from-anywhere-in-code-with-asp-net/</guid><description>&lt;p&gt;When I was working with WinForms application in previous work I have found one of most useful feature, ability to show some message to the client. For example user cannot edit some entity in particular time (it is being edited by someone else) or should change password because it will expire in x days. I wanted to do something similar in my web application.&lt;/p&gt;</description></item></channel></rss>