Tjek den nye ASP.NET-platform - ASP.NET Model View Controller (MVC) Framework

Størrelse: px
Starte visningen fra side:

Download "Tjek den nye ASP.NET-platform - ASP.NET Model View Controller (MVC) Framework"

Transkript

1 Tjek den nye ASP.NET-platform - ASP.NET Model View Controller (MVC) Framework Foredrag for SAM-DATA marts 2010 Captator Tlf: Carsten Juel Andersen Softwarearkitekt [email protected] Mobil: marts 2010 ASP.NET MVC Framework 2.0 1

2 Agenda Gode gamle ASP.NET Webforms MVC overblik Hvorfor?, Hvad?, Hvordan? Fra Controller, over Model til View Sammenhængen mellem Controller, Model og View URL routing Fleksibel og generel URL routing Håndtering af view data Hvordan flyttes data fra Controller til View Redigering af data Håndtering af Form redigering og postbacks marts 2010 ASP.NET MVC Framework 2.0 2

3 Web Forms - Windows forms déjà vu Designes som windows forms i Visual Studio Har samme event-model som Windows forms Fungerer på.net kode-præmisser - ikke på html-præmisser public partial class Form1 : System.Windows.Forms.Form private void btnberegn_click(object sender, System.EventArgs e) try lblresult.text = (double.parse(txtvalue1.text) + double.parse(txtvalue2.text)).tostring(); catch lblresult.text = "Fejl i indtastning "; public partial class _Default : System.Web.UI.Page private void btnberegn_click(object sender, System.EventArgs e) try lblresult.text = (double.parse(txtvalue1.text) + double.parse(txtvalue2.text)).tostring(); catch lblresult.text = "Fejl i indtastning" marts 2010 Web forms introduktion 4

4 Windows forms kontra Web Forms Form1 WebForm1 New Form1 Show() Beregn_Clicked() Get request Post request Beregn_Clicked() Beregn_Clicked() Close() Post request Beregn_Clicked() Tid marts 2010 Web forms introduktion 5

5 Web Forms - IsPostBack WebForm1 Da en web form gendannes forfra, hver gang et event fyres, skal dynamisk indhold, der ikke er UIbundet, loades hver gang Get request Post request Beregn_Clicked() Post request Beregn_Clicked() private void Page_Load(... ) // Put user code to initialize the page here If (!IsPostBack) // Load dynamisk indhold, // der bindes til UI kontroller // Load dynamisk indhold, der ikke er // "bundet" til en UI kontrol hver gang marts 2010 Web forms introduktion 6

6 Web Forms navigation ASP.NET servermodellen er baseret på, at postback foretages til den samme side Ofte anvendes redirect til at navigere til næste side public partial class _Default : System.Web.UI.Page protected void Button1_Click(object sender, System.EventArgs e) // gem adresse... this.response.redirect("~/default2.aspx"); marts 2010 Web forms introduktion 7

7 Master Pages Template baseret side opbygning Master Page Designview af en Master Page i VS2005 Content Page En side, der baserer sig på den givne Master Page. Læg mærke til at Master Page delen er nedtonet (som footer/header visning i Word) marts 2010 Web forms introduktion 8

8 Master Pages Masters definerer en template for en række sider Fælles indhold defineres på Master Pagen Sidens indhold markeres med <asp:contentplaceholder> Content pages referererer til en given master fylder de enkelte ContentPlaceHolders ud med indhold ved brug af <asp:content> Site.master default.aspx Master %> <asp:contentplaceholder ID="Main" RunAt="server" /> Page MasterPage- File="Site.master" %> <asp:content ContentPlaceHolderID= "Main" RunAt="server" /> </asp:content> marts 2010 Web forms introduktion 9

9 Separation af html og serverside kode Design og kodedel i partielle klasser Én klasse Design-kontroller er defineret i designer-delen Event registrering er defineret i designer-delen En række properties oprettes af design-delen Også tilgængelige på edit-time i VS marts 2010 Web forms introduktion 10

10 Sammenhæng ASPX og code-file ASPX indeholder et page direktiv Angiver betingelser til brug for generering af designer partiel klasse Page direktiv angiver (blandt andet) sammenhængen mellem ASPX og CodeFile Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"... <html xmlns=" > <head runat="server">... CodeFile fysisk fil Inherits partiel klasse navn marts 2010 Web forms introduktion 11

11 Runtime oversættelse af ASPX Parsning ASPX engine Generering Code- File klasse Request Request ASPX fil Instansiering, processering og rendering Gen ret Page klasse Kompilering Response Response Page klasse Instansiering, processering og rendering marts 2010 Web forms introduktion 12

12 Events og eventregistrering Page events AutoEventWireup= true -> navnesammenfald Page_Load, Page_PreRender etc Øvrige kontroller Navn på eventmetode i xml-markup <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>... <asp:button ID="Button1" runat="server" Text="Button OnClick="Button1_Click" />... public partial class _Default : System.Web.UI.Page protected void Page_Load(object sender, System.EventArgs e)... protected void Button1_Click(object sender, System.EventArgs e)... marts 2010 Web forms introduktion 13

13 Page og kontrol objekt model Mens siden er under opbygning, findes en objekt model, der afspejler HTML siden Runat= server kontroller får alle en unik id bestående af kontrolnavn samt path Den unikke id sikrer, at events samt indtastede data på websiden returneres til den korrekte kontrol serverside marts 2010 Web forms introduktion 14

14 MVC framework overblik Mål med Model View Controller frameworket At sikre en klar adskillelse mellem model, view, controller Model Model / entitetsobjekter / forretningsobjekter indeholder applikationens tilstand og persisteres ofte i eksempelvis en database View Ansvarlig for at displaye brugergrænsefladen Controller Håndterer brugerens input, manipulerer modellen og udvælger et view således at den næste side kan vises i brugergrænsefladen marts 2010 ASP.NET MVC Framework

15 MVC framework design principper Klar adskillelse af ansvar (model, view, controller) Optimeret for TDD baseret udvikling Test Driven Development (test-først programmering) Extensible / pluggable URL-mapping komponent, der giver mulighed for pæne og gennemskuelige URL er Eksisterende masterpages, web forms og userkontroller kan benyttes som view komponenter Postback-delen af disse kan ikke benyttes! Understøtter derudover alt ikke-ui baseret i ASP.NET Caching, URL autorisering, session handling etc. marts 2010 ASP.NET MVC Framework

16 Overblik over MVC demoen Time- og projektregistereringsapplikation Medarbejdere (Employee) kan registrere udførte opgaver (WorkRegistration) på givne projekter (Project) Man kan kun registrere på et givet projekt, hvis man har tilladelse (WorkAllowance) til at arbejde på projektet For hvert projekt er der en diskussionsliste. En medarbejder kan oprette et nyt eller besvare et tidligere indlæg (ProjectDiscussionEntry) marts 2010 ASP.NET MVC Framework

17 Overblik over den første MVC demo I første omgang vil vi se på Medarbejderliste Liste over den enkelte medarbejders registreringer Detaljevisning af registrering marts 2010 ASP.NET MVC Framework

18 Folderstruktur af ASP.NET MVC Applikation Der er 3 hovedmapper Controllers Som udgangspunkt er der en klasse for hver controller Models En eller flere modeller - f.eks. ved brug af LINQ to SQL eller LINQ to Entities Views Anbefaling: Placer model og modelhjælpeklasser i et selvstændigt projekt Undermapper for hver controller Shared indeholder fælles views marts 2010 ASP.NET MVC Framework

19 Eksekveringsrækkefølge Først routes URLen til den matchende controller Controlleren trækker view data ud af modellen Ud fra request parametrene View data sendes til viewet Default.aspx (View) url RegistrationController (Controller) view data Employee.aspx (View) Details.aspx (View) Model marts 2010 ASP.NET MVC Framework

20 RegistrationController Controller navn = klassenavn, dog uden Controller Actions er metoder på controllerklassen namespace MvcApplication.Controllers Controller navn = Registrations public class RegistrationsController : Controller public System.Web.Mvc.ActionResult Employees() Action navn = Employees URL = /Registrations/Employees public System.Web.Mvc.ActionResult Employee(string initials) URL = /Registrations/Employee/cja public System.Web.Mvc.ActionResult Details(System.Guid id) URL = /Registrations/Details/fdf2b7e4-0f9b-4c5b-ac37-27d5f3105ab3 marts 2010 ASP.NET MVC Framework

21 RegistrationController - parametre En input parameter kan mappes til en variabel i en action metode på forskellig vis public System.Web.Mvc.ActionResult Details() System.Guid id = new System.Guid(Request["id"]); URL = /Registrations/Details?id=fdf2b7e4-0f9b-4c5b-ac37-27d5f3105ab3 public System.Web.Mvc.ActionResult Details(System.Guid id) URL = /Registrations/Details?id=fdf2b7e4-0f9b-4c5b-ac37-27d5f3105ab3 public System.Web.Mvc.ActionResult Details(System.Guid id) URL = /Registrations/Details/fdf2b7e4-0f9b-4c5b-ac37-27d5f3105ab3 marts 2010 ASP.NET MVC Framework

22 Modellen Entitetsmodel genereret ud fra databasen marts 2010 ASP.NET MVC Framework

23 En komplet action metode Nu kan vi i action metoder hente data fra controlleren sende data videre til et view namespace MvcApplication.Controllers public class RegistrationsController : Controller public System.Web.Mvc.ActionResult Employees() EmployeeList employees = null; using (Model.Context context = new Model.Context()) employees = new EmployeeList(context.Employee.ToList<Employee>()); Anbefaling: return View("Default", employees); Flyt tilgang til model (inklusive LINQ-queries) til klasser i Model -namespacet marts 2010 ASP.NET MVC Framework

24 Viewet Benyt masterpages,.aspx og.ascx MVC frameworket ligger op til at holde html-koden så simpel som muligt Et view må kun have renderingslogik! Der benyttes følgende superklasser Masterpage.aspx.ascx System.Web.Mvc.ViewMasterPage System.Web.Mvc.ViewPage System.Web.Mvc.ViewUserControl marts 2010 ASP.NET MVC Framework

25 Viewet View placeres under Views mappen Opret undermappe for hver controller (samme navn som controlleren) Placer delte filer i Shared Når controller returnerer et View Vælges view i undermappe med samme navn som controller, findes den ikke her vælges view fra Shared Dette er en out of the box sammenkædning mellem controller og view Det er muligt at plugge sin egen håndtering af dette ind i frameworket marts 2010 ASP.NET MVC Framework

26 View Viewet kaldes fra RegistrationsController public System.Web.Mvc.ActionResult Employees()... return View("Default", employees); Brug den generiske version af ViewPage til at angive typen for view data og få typestærk adgang der til public partial class Default : ViewPage<EmployeeList> public void Page_Load() Model[0]. marts 2010 ASP.NET MVC Framework

27 Rendering af viewet 2 forskellige principper for rendering 1. via inline code Fordel: Typestærk adgang til view data Ulempe: Serverside kode og HTML rodet sammen 2. via code behind og ASP.NET kontroller Fordel: Serverside kode og HTML adskilt Ulempe: Databinding er typesvag Referencer til andre sider indsættes via htmlhjælpemetoder, således at der ikke er hardkodede links på siden marts 2010 ASP.NET MVC Framework

28 Rendering af View via inline Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master"... Inherit="System.Web.Mvc.ViewPage<EmployeeList>" <asp:content ID="Content2" ContentPlaceHolderID="Main... <ul> foreach (Model1.Employee emp in Model) <li> = Html.ActionLink(emp.Firstname + " " + emp.lastname, "Employee/" + emp.initials) </li> </ul> <asp:content> marts 2010 ASP.NET MVC Framework

29 View output Output er simpel html uden <form> tags Ingen lange WebForms ID er... <div id="maincontent"> <h2>timeregistrering</h2> <h3>ansatte:</h3> <ul> <li><a href="/registrations/employee/pla">peter Lauridsen</a></li> <li><a href="/registrations/employee/esv">erik Svendsen</a></li> <li><a href="/registrations/employee/moj">morten Jensen</a></li> <li><a href="/registrations/employee/hla">henriette Larsen</a></li> <li><a href="/registrations/employee/cja">carsten Juel Andersen</a></li> </ul> </div>... marts 2010 ASP.NET MVC Framework

30 Rendering af view via code behind aspx med brug af Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master"... Inherit= TODO System.Web.Mvc.ViewPage<EmployeeList>" <asp:content ID="Content2" ContentPlaceHolderID="Main... <asp:repeater ID="repViewEmployees" runat="server" OnItemDataBound="repViewEmployees_ItemDataBound"> <HeaderTemplate> <ul> </HeaderTemplate> <ItemTemplate> <li> <asp:literal ID="litLink" runat="server" /> </li> </ItemTemplate> <FooterTemplate> </ul> </FooterTemplate> </asp:repeater> </asp:content> marts 2010 ASP.NET MVC Framework

31 Rendering af view via code behind... og den tilsvarende codebehind public partial class Default : ViewPage<EmployeeList> public void Page_Load() repviewemployees.datasource = Model; repviewemployees.databind(); protected void repviewemployees_itemdatabound( object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e) if ((e.item.itemtype == ListItemType.Item) (e.item.itemtype == ListItemType.AlternatingItem) ) System.Web.UI.WebControls.Literal litlink = (System.Web.UI.WebControls.Literal)FindControl("litLink"); Employee emp = (Employee)e.Item.DataItem; litlink.text = Html.ActionLink( emp.firstname + " " + emp.lastname, "Employee/" + emp.initials); marts 2010 ASP.NET MVC Framework

32 Html.ActionLink helper metode ActionLink benytter den opsatte routing af controllere og actions til at skabe et link herudfra Eksempler på brug Kald parameterløs action på den kaldende controller Html.ActionLink("linktekst", "actionname"); Kald vilkårlig controller og action evt. med parametre Her benyttes en overload med en anonym klasse Html.ActionLink("linktekst", "Employee", new Controller = "Registrations", Initials = "cja" ); marts 2010 ASP.NET MVC Framework

33 Anden MVC demo URL routing MVC indeholder en fleksibel URL routing mekanisme RouteTable (liste af routing regler) opbygges ved applikationens opstart Når et request modtages sendes det gennem routing systemet Hvis der findes et match kaldes den matchende controller, ellers fejler requestet url RouteTable Controller Controller Employee Controller Action Employee Controller Action Employee Controller Action Employee RegistrationController Action Employee Action marts 2010 ASP.NET MVC Framework

34 URL routing Default placering for opsætning af routing er i Global.asax.cs public class Global : System.Web.HttpApplication protected void Application_Start(object sender, EventArgs e) routes.ignoreroute("resource.axd/*pathinfo"); routes.maproute( "Employee", "Registrations/Employee/initials/year/month/day", new controller = "Registrations", action = "Employee", year = (int?)null, month = (int?)null, day = (int?)null ); routes.maproute( "Default", "controller/action/id", new controller = "Home", action = "Index", id = "" ); marts 2010 ASP.NET MVC Framework

35 URL routing Url specifikation En Url specifikation kan være en eksakt Url en templated Url eller en kombination Url = "Min/Side" Url = "controller/action/id" Url = "Min/action/controller" En Route skal kunne fastlægge controller og action ved at controller og action indgår i URL eller ved at controller og action defineres som Defaults routes.maproute( "EksempelPåMinSide", "Min/Side", new controller = "MinController", action = "Side" ); marts 2010 ASP.NET MVC Framework

36 URL routing Url specifikation Templated Url Url = "controller/action/id" "tekst" angiver en parameter Ovenstående vil blandt andet matche følgende / - Hvis der findes en default controller, default action og default id /Home/Default Hvis der findes en HomeController med en Default action og en default værdi for id /Registration/Employee/20 Hvis der findes en HomeController med en Employee action marts 2010 ASP.NET MVC Framework

37 URL routing fra Route til Controller (1) Med følgende Route og Url routes.maproute( "Default", "controller/action/id", new controller = "Home", action = "Index", id = "" ); /Registration/Employee/20 Vil Route skabe et RouteData objekt public class RouteData public RouteData(); public Route Route get; set; public IDictionary<string, object> Values get; Med en IDictionary indeholdende "Controller" = "Registration" "Action" = "Employee" "Id" = 20 marts 2010 ASP.NET MVC Framework

38 URL routing fra Route til Controller (2) RequestContext sendes til en RouteHandler public class RequestContext public RequestContext(IHttpContext httpcontext, RouteData routedata); public IHttpContext HttpContext get; internal set; public RouteData RouteData get; internal set; public interface IRouteHandler IHttpHandler GetHttpHandler(RequestContext requestcontext); MvcRouteHandler kalder den konkrete action i den givne controller public class MvcRouteHandler : IRouteHandler... Routing systemet er fleksibelt og kan benyttes i non-mvc scenarier Implementer blot egen RouteHandler marts 2010 ASP.NET MVC Framework

39 URL routing mange parametre Eksempel på brug af adskillige parametre routes.maproute( "Employee", "Registrations/Employee/initials/year/month/day", new controller = "Registrations", action = "Employee", year = (int?)null, month = (int?)null, day = (int?)null ); Giver mulighed for at følgende URLer routes /Registrations/Employee/cja - alle registreringer på cja /Registrations/Employee/cja/ alle reg. på cja i 2008 /Registrations/Employee/cja/2007/12 - alle reg. på cja i december 2007 /Registrations/Employee/cja/2008/02/20 - alle reg. på cja i dag til følgende action public System.Web.Mvc.ActionResult Employee(string initials, int? year, int? month, int? day)... marts 2010 ASP.NET MVC Framework

40 Url routing validering af parametre De enkelte tokens (parametre) i Url en kan også valideres routes.maproute( "Employee", "Registrations/Employee/initials/year/month/day", new controller = "Registrations", action = "Employee", year = (int?)null, month = (int?)null, day = (int?)null new initials 3,4" ); Dette resulterer i at initials skal være 3-4 bogstaver (letters) for, at denne Route kan benyttes marts 2010 ASP.NET MVC Framework

41 Url routing udgående url er For at routing reglerne kan være fuldstændigt afkoblede, er det også nødvendigt at kunne oprette links ud fra de samme regler Benyt HtmlHelper instansen til links Html.ActionLink Html.ActionLink("linktekst", "Default" new controller = "Home" ); Benyt Controller.RedirectToAction til at redirigere til en anden side RedirectToAction udløser en Response.Redirect RedirectToAction("Default", new controller="home" ); marts 2010 ASP.NET MVC Framework

42 Tredje MVC demo fra controller til view Views må kun bero på de data Controller leverer ViewData overføres fra Controller til View public System.Web.Mvc.ActionResult Employees()... return View("Default", employees); Default.aspx (View) url RegistrationController (Controller) view data Employee.aspx (View) Details.aspx (View) Model marts 2010 ASP.NET MVC Framework

43 Overførsel af ViewData til viewet Siden med timerregistreringer for ansat skal udvides til også at vise stamoplysninger om ansat marts 2010 ASP.NET MVC Framework

44 Typesvag overførsel af ViewData I controlleren kan ViewData tilføjes typesvagt public System.Web.Mvc.ActionResult Employee(string initials, int? year, int? month, int? day) // Her hentes data fra modellen ViewData["Employee"] = employee; ViewData["Registrations"] = registrations; return View("Employee"); til følgende view public partial class Employee : Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Navn: = ((Employee)ViewData["Employee"]).Firstname... foreach (Model1.WorkRegistration wr in ((WorkRegistrationList)ViewData["Registrations"]))... marts 2010 ASP.NET MVC Framework

45 Typestærk overførsel af ViewData (1) Ved hjælp af et specifikt ViewData-objekt public class EmployeeViewData public Model1.Employee Employee get; set; public Model1.WorkRegistrationList RegList get; set; kan ViewData tilføjes typestærkt i controlleren public System.Web.Mvc.ActionResult Employee(string initials, int? year, int? month, int? day) // Her hentes data fra modellen return View("Employee", new Views.Registrations.EmployeeViewData() Employee = employee, RegList = registrations ); marts 2010 ASP.NET MVC Framework

46 Typestærk overførsel af ViewData (2) og ved at tilføje ViewData-klassen som typeparameter på viewet public partial class Employee : ViewPage<EmployeeViewData> er der typestærk adgang til Model Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Navn: = Model.Employee.Firstname Typestærk viewstate,... property hedder Model <ul> foreach (Model1.WorkRegistration wr in Model.RegList) <li> = wr.date.toshortdatestring() : = wr.title - = ConvertToReadableTime(wr.TimespanInMinutes) - = Html.ActionLink("Se detaljer", "Details" new Id=wr.WorkRegistrationId ) </li> </ul>... marts 2010 ASP.NET MVC Framework

47 Brug af ViewUserControl (1) UserControls kan benyttes til at minimere dubleret kode, når dele af layout/funktionalitet går igen fra side til side (det er der jo ikke noget nyt i) ViewUserControl indsættes på et view nøjagtigt som UserControls indsættes i web Page Language="C#" Register src="employeedetailscontrol.ascx" tagname="employeedetailscontrol" tagprefix="uc1"... <uc1:employeedetailscontrol ID="EmployeeDetailsControl1" ViewDataKey="Employee" runat="server" />... ViewData kan være identisk med sidens eller være en udsnit af de oprindelige ViewData Hvis ViewDataKey property er sat Anbefaling: Gør ViewUserControl typestærk og benyt ViewDataKey marts 2010 ASP.NET MVC Framework

48 Brug af ViewUserControl (2) Gør ViewData på ViewUserControl typestærk public partial class EmployeeDetailsControl : ViewUserControl<Employee> således at der er typestærk tilgang til Control Language="C#" CodeBehind="EmployeeDetailsControl.ascx.cs"... Navn: = Model.Firstname = Model.Lastname... På viewet sikres, at Employee sendes til ViewUserControl ved at sætte ViewDataKey... <uc1:employeedetailscontrol ID="EmployeeDetailsControl1" ViewDataKey="Employee" runat="server" />... "Employee" skal være en property på viewets ViewData af typen Employee marts 2010 ASP.NET MVC Framework

49 Fjerde MVC demo forms og post data Opret ny timeregistrering Redigering af eksisterende timeregistreringer marts 2010 ASP.NET MVC Framework

50 Forms og post data - eksekveringsfølge En action skaber data - en anden opdaterer data Registrations/DetailEdit RegistrationController Action = DetailsEdit view data DetailsEdit.aspx (View) Model Objekt(er) hentes fra modellen Postback RegistrationController Action = UpdateDetails Objekt(er) der er redigeret hentes fra modellen igen, opdateres herefter ud fra postback data og gemmes igen Model Fortsæt til ny side marts 2010 ASP.NET MVC Framework

51 Redigering af eksisterende objekt (1) Først oprettes links til opret og rediger Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" = Html.ActionLink("Opret ny", "DetailsEdit")... foreach (Model1.WorkRegistration wr in ViewState.RegList)... = Html.ActionLink("Rediger", "DetailsEdit", new Id=wr.WorkRegistrationId )... DetailsEdit action public System.Web.Mvc.ActionResult DetailsEdit(System.Guid id) WorkRegistration wr = // Hentes fra modellen return View("DetailsEdit", wr); marts 2010 ASP.NET MVC Framework

52 Redigering af eksisterende objekt (2) DetailsEdit oprettes med typestærk ViewData public partial class DetailsEdit : ViewPage<WorkRegistration> DetailsEdit Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" form action med URL, der <h2>rediger timeregistrering</h2> peger på UpdateDetails action <form action="/registrations/updatedetails/ = Model.WorkRegistrationId " method="post"> Dato: = Html.TextBox("Date", Model.Date.ToShortDateString()) <br /> Beskrivelse: = Html.TextBox("Title", Model.Title) <br /> <input type="submit" value="gem ændringer" /> </form>... Id en på textboxen skal være have samme navn som propertyen, der redigeres marts 2010 ASP.NET MVC Framework

53 Redigering af eksisterende objekt (3)... Html uden ViewState og lange id er <h2>rediger timeregistrering</h2> <form action="/registrations/updatedetails/cb09290e-12f3-4b33-99d3- c98d94c7a49f" method="post"> Dato: <input id="date" name="date" size="20" value=" "><br /> Beskrivelse:<input id="title" name="title" size="20" value="test af MVC framework"><br /> <input type="submit" value="gem ændringer" /> </form>... marts 2010 ASP.NET MVC Framework

54 Redigering af eksisterende objekt (4) Update action Form og get-parametre mappes automatisk til input parametre på action public System.Web.Mvc.ActionResult UpdateDetails( System.Guid id, System.DateTime date, int timespaninminutes, string title, string description) WorkRegistration wr; wr = // Hent eksisterende objekt fra modellen wr.date = date.date; wr.timespaninminutes = timespaninminutes; wr.title = title; wr.description = description; // Gem objektet i modellen return RedirectToAction("Employees"); marts 2010 ASP.NET MVC Framework

55 Populering af dropdowns (1) Vi mangler at håndtere lister så der oprettes en dedikeret ViewData klasse public class WorkRegistrationEditViewData public WorkRegistration Wr get; set; public EmployeeList Employees get; set; public ProjectList Projects get; set; og i controller action en DetailsEdit tilføjes lister public System.Web.Mvc.ActionResult DetailsEdit(System.Guid id) WorkRegistrationEditViewData wredit = new WorkRegistrationEditViewData(); wredit.wr = // Hent WorkRegistration objekt fra modellen wredit.employees = // Hent alle Employees wredit.projects = // Hent alle Projects return View("DetailsEdit", wredit); marts 2010 ASP.NET MVC Framework

56 Populering af dropdowns (2) Brug af HtmlHelper-metoden Select... <form action="/registrations/updatedetails/ =Model.Wr.WorkRegistrationId. ToString() " method="post">... Dato: = Html.TextBox("Date", Model.Wr.Date.ToShortDateString()) <br /> Medarbejder: = Html.Select("EmployeeId", Model.Employees, (object)model.wr.employee.employeeid.tostring())) <br />... <input type="submit" value="gem ændringer" /> </form>... I den anvendte overload tager Html.Select imod Id Listen, der skal displayes Det valgte elements key marts 2010 ASP.NET MVC Framework

57 Tilføj opret funktionalitet (1) Controller action en DetailsEdit tilrettes, så input parameteren id bliver nullable public System.Web.Mvc.ActionResult DetailsEdit (System.Guid? id) WorkRegistrationEditViewData wredit = new WorkRegistrationEditViewData(); if (id.hasvalue) wredit.wr = // Hent WorkRegistration objekt fra modellen wredit.employees = // Hent alle Employees wredit.projects = // Hent alle Projects return View("DetailsEdit", wredit); Wr-property på ViewData sættes til null, hvis det drejer sig om oprettelse af ny WorkRegistration marts 2010 ASP.NET MVC Framework

58 Tilføj opret funktionalitet (2) For at lette koden i viewets ascx-template oprettes en IsNew property i code behind public partial class DetailsEdit : ViewPage<WorkRegistrationEditViewData> protected bool IsNew; public void Page_Load() IsNew = (Model.Wr == null); Udsnit af viewets ascx-template Der sættes tomme strenge ind i input, hvis det er opret: if (IsNew) <h2>opret ny timeregistrering</h2> else <h2>rediger timeregistrering</h2> <form action="/registrations/updatedetails/ = (IsNew)? "" : Model.Wr.WorkRegistrationId.ToString() " method="post"> Dato: = Html.TextBox("Date", (IsNew)? "" : Model.Wr.Date.ToShortDateString()) <br />... marts 2010 ASP.NET MVC Framework

59 Tilføj opret funktionalitet (3) Update action tilrettes, så den kan håndtere opret public System.Web.Mvc.ActionResult UpdateDetails( System.Guid? id, System.DateTime date, int timespaninminutes, string title, string description) WorkRegistration wr; if (id.hasvalue) wr = // Hent eksisterende objekt fra modellen else wr = new Model1.WorkRegistration(); wr.workregistrationid = System.Guid.NewGuid(); wr.date = date.date; wr.timespaninminutes = timespaninminutes; wr.employee = // Hent employee fra modellen ud fra id wr.project = // Hent project fra modellen ud fra id wr.title = title; wr.description = description; // Gem objekt i modellen return RedirectToAction("Employees"); marts 2010 ASP.NET MVC Framework

60 Simplificer update action Anvend UpdateModel Mapper form-parametre direkte ind på model objekt public System.Web.Mvc.ActionResult UpdateDetails(System.Guid? id) WorkRegistration wr; if (id.hasvalue) wr = // hent eksisterende objekt fra model else wr = new Model1.WorkRegistration(); wr.workregistrationid = System.Guid.NewGuid(); UpdateModel<Models.WorkRegistration>(wr); // Gem objekt i modellen og foretag en redirect... marts 2010 ASP.NET MVC Framework

61 ASP.NET MVC Framework MVC Framework er et alternativ til web forms Ikke nødvendigvis en afløser! MVC har klare styrker især når det drejer sig om visning af data JavaScript, CSS m.v. bliver lettere tilgængelig, når sideopbygning er simplere (simplere ID er m.v.) Klar opdeling mellem forretningslogik og UI-del Der findes stadig mere udtryksfulde kontroller til Web Forms frem for MVC Men mon ikke det kommer... marts 2010 ASP.NET MVC Framework

62 Spørgsmål nyheder, artikler, information,... marts 2010 ASP.NET MVC Framework

ASP.NET MVC Framework - en del af ASP.NET 3.5 Extensions

ASP.NET MVC Framework - en del af ASP.NET 3.5 Extensions ASP.NET MVC Framework - en del af ASP.NET 3.5 Extensions Captator Tlf: 8620 4242 www.captator.dk Carsten Juel Andersen Softwarearkitekt [email protected] Mobil: 2348 0003 februar 2008 ASP.NET MVC Framework

Læs mere

Tredjepart webservices

Tredjepart webservices Tredjepart webservices 4. juni 2015 USS Dok. Klik her for at angive tekst. 1/12 Indholdsfortegnelse Introduktion... 3 Miljøer... 3 Adgang... 3 API kald... 4 GET: /authorizations... 4 Input 4 Output 4 Output

Læs mere

PHP 3 UGERS FORLØB PHP, MYSQL & SQL

PHP 3 UGERS FORLØB PHP, MYSQL & SQL PHP 3 UGERS FORLØB PHP, MYSQL & SQL Uge 1 & 2 Det basale: Det primære mål efter uge 1 og 2, er at få forståelse for hvordan AMP miljøet fungerer i praksis, og hvordan man bruger PHP kodesproget til at

Læs mere

ASP.NET MVC En Dansk e-bog.

ASP.NET MVC En Dansk e-bog. ASP.NET MVC En Dansk e-bog. Over de sidste mange uger har 4 forskellige personer i det Danske udvikler community forsøgt så godt de kunne, at skrive et eller flere kapitler til en e-bog om et nyt web framework

Læs mere

Affaldsdatasystem Vejledning supplement i system-til-system integration for.net brugere

Affaldsdatasystem Vejledning supplement i system-til-system integration for.net brugere Affaldsdatasystem Vejledning supplement i system-til-system integration for.net brugere Dokument version: 2.0 ADS version: 1.0 Henvendelse vedrørende affald: Miljøstyrelsen Roskilde, Affaldssekretariatet

Læs mere

Kom i gang med SAS STPbaserede

Kom i gang med SAS STPbaserede make connections share ideas be inspired Kom i gang med SAS STPbaserede webapplikationer Lars L. Andersson Chefkonsulent Webapplikationer Interaktion med serverbaserede data via skærmbilleder leveret gennem

Læs mere

Dokumentering af umbraco artikeleksport:

Dokumentering af umbraco artikeleksport: Dokumentering af umbraco artikeleksport: Lav en artikel side 2-3. Installationsguide side 3-5. Opsættelse af databasen og web.config side 5-8. Umbraco: templates side 8. Umbraco: borger.dk tab side 8.

Læs mere

Dynamiske Billeder, Image Map & XY coordinater. ASP.NET og Access Databasen.

Dynamiske Billeder, Image Map & XY coordinater. ASP.NET og Access Databasen. Dynamiske Billeder, Image Map & XY coordinater. ASP.NET og Access Databasen. Tutorial lavet af Jákup W. Hansen TSU 2006 22. april 2008 Hvorfor denne tutorial: Denne tutorial er ikke direkte pensum på datamatikkerskolen,

Læs mere

Byggebasen Javascript

Byggebasen Javascript EG Data Inform Byggebasen Javascript Implementering af ansvarsperioder og produktdata på eget site Jens Karsø 2013 Indhold Byggebasen javascript-plugin til DB12-site... 2 DB12-site kommunikationsmodel...

Læs mere

Vejledning til Retsinformation web services test stubs

Vejledning til Retsinformation web services test stubs Civilstyrelsen Vejledning til Retsinformation Version:2 2010.02.08 Indholdsfortegnelse 1. Introduktion... 3 2. Installation... 3 3. Web Service beskrivelse og testdata... 3 2010.02.08 2 Side 2 af 5 1.

Læs mere

Integrationsmanual. Anvendelse af webservice til kursusoversigt i Campus. Brugervejledning til udviklere

Integrationsmanual. Anvendelse af webservice til kursusoversigt i Campus. Brugervejledning til udviklere Integrationsmanual Anvendelse af webservice til kursusoversigt i Campus Brugervejledning til udviklere Moderniseringsstyrelsen Webservice manual til udviklere 2016 1 1. Indholdsfortegnelse Nyt kapitel

Læs mere

Umbraco installationsvejledning

Umbraco installationsvejledning på et ScanNet ASP Webhotel Indledning Beskrivelse Denne vejledning vil indeholde installation af CMS systemet Umbraco på et ASP Webhotel. Det dansk grundlagt Content Management System (CMS) Umbraco er

Læs mere

Udvikling af DOTNET applikationer til MicroStation i C#

Udvikling af DOTNET applikationer til MicroStation i C# Udvikling af DOTNET applikationer til MicroStation i C# Praktiske tips for at komme i gang. Gunnar Jul Jensen, Cowi Hvorfor nu det? Mdl og Vba kan det hele Fordelene er : udviklingsmiljøet er eksternt

Læs mere

Web- og serverprogrammering

Web- og serverprogrammering Web- og serverprogrammering Arkitekturer i webprogrammer - dag 6 Model-View-Controller-arkitukturen Flerlags-arkitekturer Læsning: WJSP 10 Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html

Læs mere

OFFENTLIGT KMD A/S EJ 0.0 NUMMERERET SLIDE 1 CCM USER GROUP 20.11.2013. KMD einvoicing. v/ Ole Sixhøi

OFFENTLIGT KMD A/S EJ 0.0 NUMMERERET SLIDE 1 CCM USER GROUP 20.11.2013. KMD einvoicing. v/ Ole Sixhøi OFFENTLIGT SLIDE 1 CCM USER GROUP 20.11.2013 KMD einvoicing v/ Ole Sixhøi AGENDA SLIDE 2 INTRODUKTION KMD einvoicing - Baggrunden - Ydelsen DESIGN OG FUNKTIONALITET LOGISK FLOW ARKITEKTUR KMD E-INVOICING

Læs mere

Database for udviklere. Jan Lund Madsen PBS10107

Database for udviklere. Jan Lund Madsen PBS10107 Database for udviklere Jan Lund Madsen PBS10107 Indhold LINQ... 3 LINQ to SQL og Arkitektur... 3 O/R designere... 5 LINQ Den store introduktion med.net 3.5 er uden tvivl LINQ(udtales link): Language-INtegrated

Læs mere

Software Construction 1 semester (SWC) Spørgsmål 1

Software Construction 1 semester (SWC) Spørgsmål 1 Spørgsmål 1 Objekter #1 Giv en kort præsentation af begrebet objekt, samt hvorledes du erklærer(declare), opretter(create) og bruger objekter Du kan beskrive o Datatyper o Variable / Instans variable /

Læs mere

Interaktionsudvikling

Interaktionsudvikling Projektopgave 3: Interaktionsudvikling CPH business, klasse: MulA2013 Projektansvarlige undervisere Thomas Hartmann MereteGeldermann lützen: Projekt produkt url: www.amalieardahl.dk/projekt3/index.html

Læs mere

Sådan kan du sende data fra din egen hjemmeside til JitBesked via en HTML-JDF.

Sådan kan du sende data fra din egen hjemmeside til JitBesked via en HTML-JDF. Sådan kan du sende data fra din egen hjemmeside til JitBesked via en HTML-JDF. Vejledningen her beskriver hvordan man opbygger en form i HTML og sender indholdet af felterne til JitBesked. Det kræver du

Læs mere

Plotning og MicroStation V8i. Frank Møller Christensen

Plotning og MicroStation V8i. Frank Møller Christensen Plotning og MicroStation V8i Frank Møller Christensen bentleyuser.dk årsmøde 09.11.2009 Plotning og MicroStation V8i Nyheder 27/12/2009 2 Nyheder - Georeferenced PDF - Property Publishing. - Dynamic Plot

Læs mere

Who s to blame? Jeppe Rørbæk. [email protected] +45 22 70 55 07. Konsulent og underviser på Teknologisk Institut MCP, MCAD, MCSD, MCT

Who s to blame? Jeppe Rørbæk. Jeppe.rorbaek@teknologisk.dk +45 22 70 55 07. Konsulent og underviser på Teknologisk Institut MCP, MCAD, MCSD, MCT Who s to blame? Jeppe Rørbæk [email protected] +45 22 70 55 07 Konsulent og underviser på Teknologisk Institut MCP, MCAD, MCSD, MCT Introduktion til ATLAS AJAX Intro / hensigten med ATLAS Hvordan

Læs mere

Databaseadgang fra Java

Databaseadgang fra Java Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,

Læs mere

MapBasic &.NET interaktion. MapBasic.NET. Jakob Lanstorp IT konsulent COWI. Odense 23. Juni 2011. 1 8 jun 2011 MapBasic &.

MapBasic &.NET interaktion. MapBasic.NET. Jakob Lanstorp IT konsulent COWI. Odense 23. Juni 2011. 1 8 jun 2011 MapBasic &. MapBasic &.NET interaktion MapBasic.NET Jakob Lanstorp IT konsulent COWI Odense 23. Juni 2011 1 MapBasic &.NET interaktion Erfaring med MapBasic.NET / Visual Studio Anden programmering 2 Program Hurtig

Læs mere

1 Domæne 2 1.1 Design valg... 2 1.1.1 User... 2. 2 Klassediagran 5

1 Domæne 2 1.1 Design valg... 2 1.1.1 User... 2. 2 Klassediagran 5 INDHOLD 1 Domæne 2 1.1 Design valg.................................... 2 1.1.1 User.................................... 2 2 Klassediagran 5 3 Serbio 7 3.1 Kommunikation..................................

Læs mere

Procesbeskrivelse - Webprogrammering

Procesbeskrivelse - Webprogrammering Procesbeskrivelse - Webprogrammering Indholdsfortegnelse Forudsætninger... 1 Konceptet... 2 Hjemmesiden... 2 Server-side... 3 Filstrukturen... 3 Databasehåndtering og serverforbindelse... 4 Client-side...

Læs mere

PHP kode til hjemmeside menu.

PHP kode til hjemmeside menu. PHP kode til hjemmeside menu. Home Hovedmenu 1 Hovedmenu 2 Hovedmenu 3 Hovedmenu 4 Undermenu 1 Breadcrumb Her vises indholdet af den valgte side Undermenu 2 Undermenu 3 Undermenu 4 Evt. en mulighed for

Læs mere

En textbox har et Validating event, med dette kan vi samme med en errroprovider checke input:

En textbox har et Validating event, med dette kan vi samme med en errroprovider checke input: Inputvalidering i Windows Forms Applikationer Rolf Therkildsen (6. nov 2008) Krav til inputvalidering Brugeren må aldrig blive forhindret i at flytte til en anden kontrol. Brugeren skal informeres om fejl

Læs mere

Videregående Programmering Obligatorisk opgave - 3. semester, efterår 2004

Videregående Programmering Obligatorisk opgave - 3. semester, efterår 2004 Overvågningssystem Beskrivelse Bagagesorteringssystemet består af et antal skranker (check-in) til modtagelse og registrering af bagage, et automatiseret sorteringsanlæg samt et antal terminaler (gates),

Læs mere

Installation og Drift. Aplanner for Windows Systemer Version 8.15

Installation og Drift. Aplanner for Windows Systemer Version 8.15 Installation og Drift Aplanner for Windows Systemer Version 8.15 Aplanner for Windows løsninger Tekniske forudsætninger Krav vedr. SQL Server SQL Server: SQL Server 2008 Express, SQL Server 2008 R2 eller

Læs mere

2. Systemarkitektur... 2

2. Systemarkitektur... 2 Indholdsfortegnelse 2. Systemarkitektur... 2 2.1 Præsentationsserverarkitektur... 3 2.2 Applikationsserverarkitektur... 7 Version 7.0 Side 1 af 7 5. Systemarkitektur Arkitekturen for Nyt BBR bygger på

Læs mere

METODER ARV KLASSER. Grundlæggende programmering Lektion 5

METODER ARV KLASSER. Grundlæggende programmering Lektion 5 METODER KLASSER ARV Grundlæggende programmering Lektion 5 1 METODER Sekvenser af kode om samme emne 2 REPETITION Række af statements der udfører en handling Mindst én metode der hedder main Forskellen

Læs mere

Dokumentation. Udbyder : sms1919.dk Service : sms-grupper Static FBML Facebook. : Facebook Integration med sms-grupper.

Dokumentation. Udbyder : sms1919.dk Service : sms-grupper Static FBML Facebook. : Facebook Integration med sms-grupper. Dokumentation Udbyder : sms1919.dk Service : sms-grupper Static FBML Facebook Moduler Påkrævet : Facebook Integration med sms-grupper Version : v1.00 Indholdsfortegnelse Versionshistorik... 3 Målet med

Læs mere

SWC eksamens-spørgsmål. Oversigt

SWC eksamens-spørgsmål. Oversigt SWC eksamens-spørgsmål Oversigt #1 Typer og variable #2 Aritmetik og logik #3 Klasser (definition, objekter) #4 Klasser (metoder) #5 Klasser (nedarvning, polymorfi) #6 Conditional statements #7 Repetition

Læs mere

Ressourcekatalog. Christian Glantz. Kongens Lyngby 2010 IMM-B.Eng-2010-25

Ressourcekatalog. Christian Glantz. Kongens Lyngby 2010 IMM-B.Eng-2010-25 Ressourcekatalog Christian Glantz Kongens Lyngby 2010 IMM-B.Eng-2010-25 Technical University of Denmark Informatics and Mathematical Modelling Building 321, DK-2800 Kongens Lyngby, Denmark Phone +45 45253351,

Læs mere

Velkommen til MODx kursus

Velkommen til MODx kursus Velkommen til MODx kursus Dette er en gennemgang af den mest basale funktionalitet i vores nye hjemmeside redigerings værktøj. MODx er et meget simpelt CMS (Content Management System), der gør det muligt

Læs mere

Adgang til kundeportalen

Adgang til kundeportalen Til elleverandørerne Adgang til kundeportalen 3. april 2012 XSTJ/LRO Følgende dokument har til formål at orientere elleverandørerne om implementering og testning af den it-funktionalitet, som skal sikre

Læs mere

Installation og Drift. Aplanner for Windows Systemer Version 8.15.12

Installation og Drift. Aplanner for Windows Systemer Version 8.15.12 Installation og Drift Aplanner for Windows Systemer Version 8.15.12 Aplanner for Windows løsninger Anbefalet driftsopsætning Cloud løsning med database hos PlanAHead Alle brugere, der administrer vagtplaner

Læs mere

Advanced Word Template Brugermanual

Advanced Word Template Brugermanual Advanced Word Template Brugermanual Forord: Advanced Word Template er et værktøj, der anvendes sammen med Microsoft Word til at opbygge ensartet beskrivelser på en mere intelligent måde end Copy and Paste

Læs mere

Brugervejledning til Design Manager Version 1.02

Brugervejledning til Design Manager Version 1.02 Brugervejledning til Design Manager Version 1.02 Indholdsfortegnelse 1. Introduktion... 3 1.1 Det kan du med HostedShop Design Manager... 3 1.2 Feature list... 3 2. Design... 4 3. Filer og CSS... 4 3.1

Læs mere

DOtAB. Teknisk rapport

DOtAB. Teknisk rapport DOtAB Teknisk rapport Indholdsfortegnelse Introduktion... 1 Systemarkitektur... 1 Teknologier... 1 Platforme for mobile enheder... 1 Kommunikations interfacet... 2 Udviklingsmiljø... 2 IDOtAB (service

Læs mere

PHP Quick Teknisk Ordbog

PHP Quick Teknisk Ordbog PHP Quick Teknisk Ordbog Af Daniel Pedersen PHP Quick Teknisk Ordbog 1 Indhold De mest brugte tekniske udtryk benyttet inden for web udvikling. Du vil kunne slå de enkelte ord op og læse om hvad de betyder,

Læs mere

My booking. Generelt. Forsiden. Version 9.0

My booking. Generelt. Forsiden. Version 9.0 My booking Version 9.0 System til at lave online bookinger, med mulighed for opdeling i grupper, forskellige booking typer, ændre layout indstillinger, status styring, sprogvalg samt en del mere, detaljer

Læs mere

Hvorfor skal vi bruge objekt orienteret databaser?

Hvorfor skal vi bruge objekt orienteret databaser? OODBMS Vs. RDBMS 1 Indholdsfortegnelse Hvorfor skal vi bruge objekt orienteret databaser?... 3 OODBMS i erhvervslivet... 4 Bagsiden af medaljen... 5 OODBMS i praksis... 6 Konklusion... 8 2 Hvorfor skal

Læs mere

Eksempel: et ordresystem note 5 Lagdeling s. 1

Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordre-system NiceHair er et firma, som sælger udstyr, inventar og frisørartikler til frisørsaloner over hele landet. Det er ejet af et ægtepar

Læs mere

Anvendelse af Model- View koncept i SAS Stored Processer

Anvendelse af Model- View koncept i SAS Stored Processer Anvendelse af Model- View koncept i SAS Stored Processer Peter Sandal Boll Chefkonsulent Professional Services, Skanderborg SAS Institute A/S Agenda Model-View-Controller konceptet (MVC) Eksempel med put-rapport

Læs mere

Web CMS kontra Collaboration

Web CMS kontra Collaboration Web CMS kontra Collaboration Sammenligning mellem Sitecore og Sharepoint Lars Fløe Nielsen, Evangelism [email protected] Page 1 Sitecore har dyb integration til Microsoft Sitecore har integration til mange

Læs mere

Et subsite i Umbraco

Et subsite i Umbraco Et subsite i Umbraco Agenda Hvad er Umbraco Login i CMS Gennemgang af CMS Opret et forløb Workshop Hvad er Umbraco Umbraco er et Dansk Content Management System (CMS). Det benyttes bl.a. Af Wired, Heinz,

Læs mere

PHP Snippets. De små korte. Skrevet af Daniel Pedersen

PHP Snippets. De små korte. Skrevet af Daniel Pedersen PHP Snippets De små korte Skrevet af Daniel Pedersen Indhold PHP Snippets De små korte er en samling af små og praktiske kode eksempler med kort forklaring, som med formål at kunne benyttes til opsalgsværk

Læs mere

SOSIGW. - Administrationskonsol for SOSIGW 1.0.6. Indeks

SOSIGW. - Administrationskonsol for SOSIGW 1.0.6. Indeks SOSIGW - Administrationskonsol for SOSIGW 1.0.6 Indeks Indeks... 1 Revisionshistorik... 2 Introduktion... 2 Administrationskonsollen... 2 Generel brug af konsollen... 3 Fremsøgning af ID-kort... 3 Søgning

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2019 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 27. februar, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Program Dokumentation PC Software Skrevet af. Gruppen. Version 1.0

Program Dokumentation PC Software Skrevet af. Gruppen. Version 1.0 Program Dokumentation PC Software Skrevet af Gruppen. Version 1.0 Indholds fortegnelse 1. INDLEDNING...3 1.1. FORMÅL...3 1.2. REFERENCER...3 1.3. VERSIONSHISTORIE...3 1.4. DEFINITIONER...3 1.5. DOKUMENTATIONENS

Læs mere

Eksamens rapport Informationsteknologi B

Eksamens rapport Informationsteknologi B 2014 Eksamens rapport Informationsteknologi B Mathias Sondrup, Rasmus Larsen og Jonas Hansen 09-05-2014 Indhold Indledende afsnit... 5 PROBLEMFORMULERING... 5 KRAV TIL LØSNING... 5 Brugergrænseflade...

Læs mere

Dokumentation. Karen-Louise Fejerskov

Dokumentation. Karen-Louise Fejerskov Dokumentation Grafisk Workflow Et af produkterne, jeg skulle lave, var et redesign af FreQuence s info hjemmeside. A B Punkt 1 Ansvar: Jeg har selv stået for opsætningen af hjemmeside og selv bestemt,

Læs mere

Web sider. Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det?

Web sider. Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det? Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det? I dag skal du lære at lave hjemmesider, så du også kan bidrage til at opbygge

Læs mere

PID2000 Archive Service

PID2000 Archive Service PROLON CONTROL SYSTEMS Herstedvesterstræde 56 DK-2620 Albertslund Danmark Tlf.: (+45) 43620625 Fax: (+45) 43623125 PID2000 Archive Service Bruger vejledning Juni 2002 Denne manual beskriver brugen af softwaren

Læs mere

ITD ecmr WEB Services. Af Allan Wisborg, IT Udvikler

ITD ecmr WEB Services. Af Allan Wisborg, IT Udvikler Af Allan Wisborg, IT Udvikler Til løsningen ecmr Det elektroniske fragtbrev udbydes en række offentlige WEB services. Dette er beskrivelsen af disse services og hvorledes de anvendes. 21. December 2015

Læs mere

Digital post Snitflader Bilag A5 - REST HTTP returkoder Version 6.3

Digital post Snitflader Bilag A5 - REST HTTP returkoder Version 6.3 Digital post Snitflader Bilag A5 - REST HTTP returkoder Version 6.3 1 Indholdsfortegnelse INDHOLDSFORTEGNELSE 2 A5.1 INTRODUKTION 4 A5.2 HTTP RETURKODER 4 A5.3 DIGITAL POST FEJLKODER 7 A5.3.1 DIGITAL POST

Læs mere

SYSTEMDOKUMENTATION AF POC

SYSTEMDOKUMENTATION AF POC DIGITALISERINGSSTYRELSEN POC PÅ ORKESTRERINGSKOMPONENTEN SYSTEMDOKUMENTATION AF POC Version: 1.1 Status: Endelig Godkender: Forfatter: Copyright 2019 Netcompany. All rights reserved Dokumenthistorik Version

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 20. marts, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Grænseflade til afhentning og indberetning af prøvekarakterer i dansk og matematik på Optagelse.dk

Grænseflade til afhentning og indberetning af prøvekarakterer i dansk og matematik på Optagelse.dk Grænseflade til afhentning og indberetning af prøvekarakterer i dansk og matematik på Optagelse.dk Dato 16-09-2015 Version Status 1.0 Gældende Ansvarlig Tobias Thisted Side 2 af 11 Ændringshistorik Version

Læs mere

Programmering I Java/C#

Programmering I Java/C# Programmering I Java/C# Dit første projekt Datatekniker Intro to C# C# (C Sharp) Et enkelt, moderne, generelt anvendeligt, objektorienteret programmeringssprog Udviklet af Microsoft, ledet af danskeren

Læs mere

D INTEGRATIONSDESIGN FOR DATAAFTAGERE

D INTEGRATIONSDESIGN FOR DATAAFTAGERE DIGST ORKESTRERINGSKOMPONENT D0180 - INTEGRATIONSDESIGN FOR DATAAFTAGERE Version: 1.3 Status: Endelig Godkender: Forfatter: Copyright 2019 Netcompany. Alle rettigheder forbeholdes. Dokumenthistorik Version

Læs mere

FLIS PORTAL GENNEMGANG OG STIKPRØVER (SEPTEMBER 2015)

FLIS PORTAL GENNEMGANG OG STIKPRØVER (SEPTEMBER 2015) FLIS PORTAL GENNEMGANG OG STIKPRØVER (SEPTEMBER 2015) INDHOLD 1. FORMÅL OG SCOPE... 1 1.1. TEKNOLOGIER OG RAMMEVÆRKER... 1 2. ARKITEKTUR... 2 2.1. KOMBIT.FLIS.PORTAL... 3 2.2. SCRIPTS... 3 2.3. SHAREPOINT

Læs mere

Opgave 1. Lav de opgaver du ikke nåede sidste gang.

Opgave 1. Lav de opgaver du ikke nåede sidste gang. Opgave 1 Lav de opgaver du ikke nåede sidste gang. Opgave 2 I denne opgave skal du indsamle person oplysninger, og sikre dig at brugeren indtaster i alle felter: Du skal bruge 3 labels, 2 tekst bokse,

Læs mere

ADIS, WS og Meta Service

ADIS, WS og Meta Service ADIS, WS og Meta Service Om ADIS, Web Services, Værktøjer og Meta Service. Michael Jacobsen Technology Network Management Agenda ADIS og dens udvidelse ISOagriNET Web Service med eller uden fuldt objektmodel

Læs mere

Introduktion til ActionScript, fortsat

Introduktion til ActionScript, fortsat Introduktion til ActionScript, fortsat Kaspar Rosengreen Nielsen [email protected] i n t e r a c t i v e s p a c e s. n e t Kaspar Nielsen, [email protected] 1 Dagens program Opsamling

Læs mere

ADMINISTRATIONS MANUAL

ADMINISTRATIONS MANUAL ADMINISTRATIONS MANUAL onmap.dk Administrations Manual Dansk Version 0.1 Side 1 Denne manual beskrive hvordan en race administrator kan opsætte og bruge onmap.dk race protalen til at lave en specialiseret

Læs mere

Vejledning til Teknisk opsætning

Vejledning til Teknisk opsætning Vejledning til Teknisk opsætning v. 1.0 Adm4you, 2010. Indhold Kort om denne vejledning... 3 Generelt om easyourtime... 3 Installation af databasen... 3 Sikkerhed og rettigheder... 4 SQL Login... 4 Rettigheder

Læs mere

Internet Information Services (IIS)

Internet Information Services (IIS) Internet Information Services (IIS) Casper Simonsen & Yulia Sadovskaya H1we080113 06-11-2013 Indholdsfortegnelse Problemformulering... 2 Hvorfor:... 2 Hvad:... 2 Hvordan:... 2 Problembehandling... 3 Introduktion...

Læs mere

EasyIQ Opdatering 5.2.3 -> 5.4.0

EasyIQ Opdatering 5.2.3 -> 5.4.0 EasyIQ Opdatering 5.2.3 -> 5.4.0 Kunde: Forfatter: Thomas W. Yde Systemtech A/S Side: 1 af 17 1 Indholdsfortegnelse 2 GENERELT OMKRING FORUDSÆTNINGEN OG OPDATERINGS FORLØBET... 3 2.1 FORUDSÆTNINGER...

Læs mere

Web Services Light. Karen Thomsen. Silkeborg Bibliotek. Karen Thomsen

Web Services Light. Karen Thomsen. Silkeborg Bibliotek. Karen Thomsen Web Services Light Silkeborg Bibliotek 1 Min baggrund Faglig baggrund datalog Ansættelse 16 år som IT- udvikling og usability 4 år som usability-konsulent og nu 3 år på Silkeborg Bibliotek som IT- udvikling

Læs mere

Namespaces. Vi kan kvalificere elementer på denne måde: <?xml version="1.0" encoding="iso-8859-1"?>

Namespaces. Vi kan kvalificere elementer på denne måde: <?xml version=1.0 encoding=iso-8859-1?> Namespaces...1 Default namespace:...6 Præfiks:...7 To slags navne i XML:...11 Standard namespaces:...14 RDF Resource Description Framework:...18 Attributter:...19 DTD skemaer og namespaces:...21 Namespaces.

Læs mere

Oprettelse af Titelblok i Capture og Capture CIS

Oprettelse af Titelblok i Capture og Capture CIS e-service Titelblok i OrCAD Capture og Capture CIS Side 1 af 11 Oprettelse af Titelblok i Capture og Capture CIS Note skrevet af : Nordcad Systems Technical Support Revision : April 2003, Release 14.2/9.2.3,

Læs mere

Fase Forklaring Navigation. Mappen skal indeholde alle elementer til dit site.

Fase Forklaring Navigation. Mappen skal indeholde alle elementer til dit site. 1 Opstart af et site Opret hovedmappen Opret grafikmappen Opret dit site Mappen skal indeholde alle elementer til dit site. Opret en mappe indeni den første og kald den grafik. Heri lægges alle dine grafikfiler.

Læs mere