6

I wanted to know if writing a self hosted WebApi project using async await keyword features would be supported in Mono on Linux..

I found this: on the Mono website on the compability page: enter image description here

and then there is some text saying limited ASP.NET 4.5 async stack.

So... i'm confused... what async/await aspect is or isn't supported with Mono 4.5 ?

abatishchev
  • 98,240
  • 88
  • 296
  • 433
7wp
  • 12,505
  • 20
  • 77
  • 103
  • I think they mean "classic" ASP.NET "Web Forms". Like (http://www.asp.net/web-forms/overview/performance-and-caching/using-asynchronous-methods-in-aspnet-45 or http://www.hanselman.com/blog/TheMagicOfUsingAsynchronousMethodsInASPNET45PlusAnImportantGotcha.aspx – abatishchev Oct 08 '15 at 22:13
  • 2
    A better, easier and more reliable way would be to write a prototype. – abatishchev Oct 08 '15 at 22:14
  • Hi @abatishchev - what is the meaning of a prototype in this context? Can you please help me understand this? – Zameer Ansari Nov 24 '15 at 14:32
  • 1
    @student: My point was to install Mono (on a Linux box such as Ubuntu) and try your code there. – abatishchev Nov 25 '15 at 18:43
  • 1
    @abatishchev Oh yeah! You mean - the best way to learn anything is to **JUST DO IT**. I was understanding prototype as some "coding thing". Thank you man! – Zameer Ansari Nov 26 '15 at 05:39
  • I make pull request for mono https://github.com/mono/mono/pull/3048. It makes Synchronous execution of asynchronous web api stack. – Oleg Belousov Dec 04 '16 at 19:52

1 Answers1

4

Mono cloned ASP.NET 2 pipeline a long time ago, to support the classic ASP.NET WebForms based on "System.Web" assembly. That model was a sync one due to Microsoft's initial design.

However, later Microsoft added many async features to the pipeline (System.Web) during .NET 4/4.5 time frame, and that's a new design Mono does not yet fully clone. That's probably the meaning behind the paragraph.

I don't think Mono should move ahead with "System.Web" as even Microsoft gives it up in favor of OWIN a while ago, and now ASP.NET 5/DNX.

Update:

Please switch to ASP.NET Core today, as it is simply the best in this field for cross platform web applications.

Lex Li
  • 60,503
  • 9
  • 116
  • 147