Orchard binnen de (Rijks)overheid?

Topics: Nederlands (Dutch)
Nov 9, 2012 at 5:45 PM

Ik werk bij de rijksoverheid en wij gaan mogelijk Orchard gebruiken voor onze websites. Ik ben benieuwd of er al websites in gebruik zijn binnen de (rijks)overheid die gebruik maken van Orchard?

Developer
Dec 25, 2012 at 6:28 PM

Lijkt erop dat je de eerste zult zijn :)

Weet je al of het project door gaat - met Orchard?

Dec 25, 2012 at 7:14 PM

We zijn momenteel bezig met een proof of concept of we onze websites kunnen overzetten naar Orchard. Ik vermoed dat de grootste uitdaging zal zijn om onze huidige controls gebaseerd op webforms te integreren met Orchard. We willen ze niet helemaal herbouwen. Iemand ervaring met een migratie / integratie van bestaande webform controls in combinatie met Orchard?

Developer
Dec 25, 2012 at 7:20 PM

Dat zou nog weleens lasting kunnen worden, aangezien Orchard werkt met Razor en MVC en niet met WebForms. Nu kun je wel sommige WebControls renderen in MVC views wanneer deze controls niet ViewState afhankelijk zijn, maar of dat ook kan vanuit .CSHTML bestanden dat betwijfel ik.

Dec 25, 2012 at 7:35 PM

We zitten nu een beetje te denken aan een oplossing waarbij we de webforms controls vanuit een andere website hosten en vanuit Orchard bepaalde data, zoals de theme, menu e.d. erbij zetten als een master page. Geen optimale situatie, maar hopelijk bespaart dit wel veel ontwikkel- en testwerk van de bestaande controls. Zodra er reden is om de bestaande controls te wijzigen kunnen ze herbouwd worden voor MVC.

Jan 14, 2013 at 9:26 AM

Edward, Heb je inmiddels al vooruitgang geboekt met het integreren van de bestaande webforms code binnen Orchard?

Jan 15, 2013 at 7:31 PM

Ik heb er nog niet veel tijd aan kunnen besteden. Het idee is om in Orchard een eenvoudige module te maken die bij een aanroep een pagina teruggeeft met layout van de theme, de menustructuur en een placeholder. Naast de Orchard site is er ook een webforms website. Als je de webforms site aanroept haalt deze de lege pagina op van Orchard en vervangt de placeholder met het webform control. Voor de gebruiker moet het, op de url na, transparant zijn. Zodra ik iets werkends heb zal ik het hier melden.

Feb 19, 2013 at 5:54 PM
We hebben besloten om deze weg niet verder in te gaan, maar de huidige webform controls om te bouwen naar MVC. We hebben wel even getest of het werkt. Hieronder een stukje klad van de pagina met het webform control dat in de layout van de Orchard website werd getoond, mocht iemand hier wel mee verder willen gaan.
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Net" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Text" %>
<%@ Import Namespace="System.Web" %>

<script runat="server">

    public void Page_Load(object sender, EventArgs e)
    {
        <!-- Laad lege pagina in Orchard theme en een place holder '<!--split-->'. Deze placeholder wordt vervangen door het control -->
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost:1234/template");
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        Stream receiveStream = response.GetResponseStream();
        StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);

        string html = readStream.ReadToEnd();

        <!-- Vervang de relatieve paden door volledige paden van de Orchard site -->
        html = html.Replace("/Themes/Rijkshuisstijl/", "http://localhost:1234/Themes/Rijkshuisstijl/");
        
        int pos = html.IndexOf("<!--split-->");
        string head = html.Substring(0,pos);
        string footer = html.Substring(pos + 12, html.Length - (pos + 12));

        
        litHead.Text = head;
        litFooter.Text = footer;
    }
</script>


<asp:Literal Id="litHead" runat="server" />

<form runat="server">
<prefix:Aanvraagformulier Id="aanvraagformulier" runat="server" />
</form>

<asp:Literal Id="litFooter" runat="server" />