Avatar billede fiskerendk Nybegynder
04. december 2002 - 15:55 Der er 16 kommentarer og
1 løsning

VB -> C#

Hej..

nu har jeg lavet en del ASP.NET i VB.. men har fundet ud af at jeg hellere vel udvikle med C# jeg har nu derfor dette som jeg skal ha omsat til C# scrip istedet for VB!

<%@ Page Language="VB" %>
<Script Language="VB" runat="server">
Sub Page_load(obj as Object, E as EventArgs)

If Request.QueryString("mode")="Home" then
    panelHome.Visible=True
    panelContact.Visible=false

Else If Request.QueryString("mode")="Contact" then
    panelHome.Visible=false
    panelContact.Visible=true

End If
End Sub
</script>

hvor disse panels blir brugt

<asp:Panel id="panelContact" runat="server">
</asp:Panel>

Med Venlig Hilsen
Thomas
Avatar billede simon.ulsnes Nybegynder
04. december 2002 - 16:03 #1
<%Page Language="C#" %>
<script language="C#" runat="server">
public void Page_Load(object sender, EventArgs e)
{
  if (Request.QueryString["mode"] == "Home")
  {
    panelHome.Visible = true;
    panelContact.Visible = false;
  }
  else if (Request.QueryString["mode"] == "Contact")
  {
    panelHome.Visible = false;
    panelContact.Visible = true;
  }
}
</script>

<html>
<head.../>
<body...>
<asp:Panel id="panelContact" runat="server">panelContact...</asp:Panel>
<asp:Panel id="panelHome" runat="server">panelHome...</asp:Panel>
</body>
</html>

// Simon
Avatar billede simon.ulsnes Nybegynder
04. december 2002 - 16:04 #2
Læg specielt mærke til == i stedet for =...

Forskellen er, at == sammenligner (returnerer true eller false) hvor = sætter venstre side til højre side.

// Simon
Avatar billede fiskerendk Nybegynder
04. december 2002 - 16:06 #3
Lige nu virker det bar forvirende i forhold til VB.. men det vender jeg mig nok til...! hehe men tak scriptet!
Avatar billede fiskerendk Nybegynder
04. december 2002 - 16:12 #4
Simon har lige et spørgsmål

hvad er problemet her:

<script language="C#" runat="server">
public void Page_Load(object sender, EventArgs e)
{
  if (Request.QueryString["mode"] == "")
  {
    panel.Visible = True;
    panelHome.Visible = false;
    panelSidebar.Visible = false;
    panelContact.Visible = false;
  }
  else if (Request.QueryString["mode"] == "Home")
  {
    panel.Visible = true;
    panelHome.Visible = true;
    panelSidebar.Visible = true;
    panelContact.Visible = false;
  }
  else if (Request.QueryString["mode"] == "Contact")
  {
    panel.Visible = true;
    panelHome.Visible = false;
    panelSidebar.Visible = true;
    panelContact.Visible = true;
  }
}
</script>

det virker ik rigtig?
Avatar billede fiskerendk Nybegynder
04. december 2002 - 16:18 #5
Simon Hjælp :)
Avatar billede simon.ulsnes Nybegynder
04. december 2002 - 16:19 #6
Hmmm... Jeg kan ikke lige umiddelbart se nogle syntaktiske fejl. Men i et sådant tilfælde ville jeg nok bruge switch i stedet for if...elseif:

switch (Response.QueryString["mode"])
{
  case "Home":
    // gør hvad der skal gøres...
    break;
  case "Contact":
    // gør noget andet...
    break;
  default:
    // gør hvad der skal gøres hvis ingen af ovenstående betingelser
    // er opfyldt.
    break;
}
Avatar billede simon.ulsnes Nybegynder
04. december 2002 - 16:20 #7
Ellers, får du nogen fejlmeddelelser?
Avatar billede fiskerendk Nybegynder
04. december 2002 - 16:21 #8
jeg for bare Runtime Error!
Avatar billede simon.ulsnes Nybegynder
04. december 2002 - 16:23 #9
ok.

if (Array.IndexOf(Response.QueryString.AllKeys, "mode") != -1)
{
switch (Response.QueryString["mode"])
{
case "Home":
  // gør hvad der skal gøres...
  break;
case "Contact":
  // gør noget andet...
  break;
default:
  // gør hvad der skal gøres hvis ingen af ovenstående betingelser
  // er opfyldt.
  break;
}
}

burde virke...
Avatar billede fiskerendk Nybegynder
04. december 2002 - 16:26 #10
Ville det her være rigtigt?
<script language="C#" runat="server">
public void Page_Load(object sender, EventArgs e)
{
  switch (Response.QueryString["mode"])
  {
    case "Home":
      panel.Visible = true;
      panelHome.Visible = true;
      panelContact.Visible = false;
      break;
    case "Contact":
      panel.Visible = true;
      panelHome.Visible = false;
      panelContact.Visible = true;
      break;
    default:
      panel.Visible = True;
      panelHome.Visible = false;
      panelContact.Visible = false;
      break;
  }
}
</script>
Avatar billede fiskerendk Nybegynder
04. december 2002 - 16:27 #11
nej hvor er det svært at lave C# i forhold til VB!
kan du fortælle mig fordelen ved C# i forhold til VB? for ellers så kan det sq være jeg dropper det istedet!
Avatar billede simon.ulsnes Nybegynder
04. december 2002 - 16:35 #12
Tja.
Med tiden bliver det meget nemmere at overskue, i f.eks. at man hiver et objekt ud af et array med [] i stedet for () - det gør det nemmere at skelne mellem objekter og funktionskald. Det tager heller ikke nær så lang tid at skrive, da man skal skrive } i stedet for End Sub...

Desuden findes der flere tutorials m.v. til C#.

Hvis du kan C#, har du meget bedre mulighed for senere at gå "videre" (eller tilbage, om man vil) til C++ og udvikle "rigtige" programmer (ren Windows-programmering i stedet for .NET).

Du kan også lave fis og ballade med såkaldt unsafe kode, men det er sjældent nødvendigt.

Der kommer sandsynligvis ingen VB.NET compiler til Linux sammen med Mono (d.v.s. at dine ASP.NET-filer i VB.NET ikke vil kunne køre på et Linux-baseret .NET-miljø).

Sidst og absolut mindst, så genereres der en usandsynligt lille mængde ekstra overhead med VB.NET i forhold til C# for at bevare noget bagudkompatibilitet. Det er så lidt så ingen vil lægge mærke til det, men det kan dog alligevel have noget at sige i meget store applikationer.

Det var lige hvad jeg kunne remse op sådan på stående fod.

// Simon
Avatar billede fiskerendk Nybegynder
04. december 2002 - 16:44 #13
Ok men man skal vel også tage i betrakning at min viden nu efterhånden er lagt i VB og VB.NET og dertil er det jo svært for mig lige pludselig at skulle til at bruge andre teknikker..

jeg fandt forøvrigt denne artiklen på ActiveDeveloper.dk
http://activedeveloper.dk/aspdigital/2002190901.asp
som omhandler VB.NET vs. C#

Er der kommet .NET til Linux?
nu skal det også siges at Linux er ik noget jeg syntes!
Det er mere usikkert en Windows i de seneste rapporter.. derfor holder jo mig til Windows basseret!

men hvis du skulle gi et godt råd?
hvad vil du så råde mig til?

at skråtte VB og starte med C# el fortsætte med VB?
Avatar billede simon.ulsnes Nybegynder
04. december 2002 - 17:00 #14
Hmmm... Først og fremmest: Windows er IKKE mere stabilt end Linux. Det er sværere at konfigurere, til gengæld kan alting konfigureres og det er let at lave en fejl - f.eks. skal man kun ændre et enkelt tal i en enkelt konfigurationsfil for at computeren simpelthen ikke vil starte op, og så er man på egen hånd.
Jeg sidder i dette øjeblik og skriver på min computer fra Red Hat Linux 8.0, som virker fortræffeligt uden at jeg har skullet lave noget specielt (selv om det er nyttigt at kunne nogle tricks) - det er aldrig sket for mig at systemet er crashet.
Desuden er Windows lavet af Microsoft, og de er onde... :-)

Mono-projektet er en portering af .NET Frameworket til Linux - den er currently på version 0.16, så der er lidt vej igen... Men det kan da lade sig gøre at afvikle små programmer.

Jeg ville bestemt råde dig til at begynde på C# - fordi det er bedre, og fordi jeg hader VB... :-)
(folk vil grine af dig hvis du siger "Ja, jeg programmerer så VB" - det er ikke et "seriøst" sprog i snobbede C++-programmørers øjne)

Personligt prøvede jeg engang at begynde at lave noget i VB fordi jeg gerne ville lave et Windows-program, og jeg kunne ikke helt regne den ud i C++ (det var før .NET), men jeg holdt op - jeg kunne simpelthen ikke holde den syntaks ud!
Men det er jo selvfølgelig bare min personlige mening.

// Simon
// This sentence no verb.
Avatar billede odegaard Nybegynder
04. december 2002 - 20:25 #15
> Først og fremmest: Windows er IKKE mere stabilt end Linux.
Det var nu heller ikke det han skrev. Fiskeren brugte ordet "usikkert"

>folk vil grine af dig hvis du siger "Ja, jeg programmerer så VB" -
>det er ikke et "seriøst" sprog i snobbede C++-programmørers øjne)
Nu er det immervæk verdens mest benyttede programmeringsprog til Windows. Men hvis nogen spurgte, ville jeg nu nok også hellere sige VB.NET ! :-)
Dine holdninger stammer sikkert fra VB før version 6 og 7, hvilket vel ikke er fair (den første version af C++ var vel heller ikke meget værd).

Mht. artiklen ang. C# vs. VB, så holder den artikel ikke meget vand (jf. kommentarer i bunden).
Avatar billede fiskerendk Nybegynder
04. december 2002 - 21:05 #16
odegaard > hehe ja det var nemlig usikkert og det kan man godt sige Linux er.. jeg har en del artikler på nettet hvor det er beskrevet.. men det er også ligemeget... ville jo bar høre hvad folk syntes.. men tror jeg holder mig til VB.NET/VB for det kan jeg sq finde ud af :)

men mange tak Simon..
Avatar billede simon.ulsnes Nybegynder
04. december 2002 - 22:34 #17
I mit tilfælde er det nu mere VB(.NET)'s syntaks jeg synes er klam... Men lad venligst være med at flambere mig, jeg kan alligevel ikke argumentere for det...
Hvis usikker ikke betyder ustabil, hvad mente du så?

Verdens mest benyttede programmeringssprog til Windows - ja. Fordi det er nemt. Enhver familiefar af en hobbyprogrammør kan lære det. (indrømmet, det er smart til store projekter hvor man skal have en brugerflade hurtigt og hvor resten i øvrigt programmeres i andre sprog).

// Simon
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester