---
title: "Gå över till Vb från C#"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/174059-gå-över-till-vb-från-c"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Fredde Mannen"
published: "2008-09-15T07:12:51.000Z"
updated: "2008-09-17T08:47:52.000Z"
replies: 17
views: 719
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/174059-gå-över-till-vb-från-c"
---

# Gå över till Vb från C#

## #1 — Fredde Mannen, 2008-09-15T07:12Z

Det är nu så att jag kanske måste vänja om mig till Vb istället för C# på det framtida företaget. Då kommer lite funderingar här:

```
using Some.Thing = Imports Some.Thing ? 

Subclass : Baseclass  = Subclass Inherits Baseclass ?

Subclass : IInterface = Subclass Implements IInterface ?

public = Public ?

private = Private ? 

static =  Shared ? 

overrides = Overriden ?
```

Konstruktorer: 

```
public Klassnamn() {
} 

Public Sub New() 
End Sub
```

Instansiering av objekt:

```
Klassnamn objekt = new Klassnamn(); 
Dim objekt As New Klassnamn()
```

Properties 

```
private string _name;
public string Name {
 get { return _name; }
 set {  _name = value; }
}

Private _name As String
Public Property Name() As String
        Get
            Return _name
        End Get
        Set(ByVal value As String)
            _name = value
        End Set
End Property
```

Linq

```
var query = from o in objekt select o;

Dim query = From o In objekt Select o
```

Finns förmodligen 100 saker till som skiljer dem åt.. TYP allt.. men saker som gör att man kan ta sig framåt utan att bli för tokig, med hänsyn till syntaxen då. Själva dotnet-ramverket är ju det samma. :OO

Btw. hur är det med delegates ? antar att dessa inte finns i sin form som i C# utan mer som detta: 

```

myList.Sort(delegate(Person p1, Person p2) { return p1.Name.CompareTo(p2.Name); });

myList.Sort(AddressOf MethodName)

Public Function MethodName(ByVal p1 As Person, ByVal p2 As Person) As Integer 
 Return p1.Name.CompareTo(p2.Name)
End Function
```

  Men iofs här kan man väl i stort sätt använda Linq istället då? :OO Om man inte vill skriva sin egen sort av någon anledning. 

Tror ni det kan funka.. if-satser och så, loopar med mer bör väl vara som i ASP 3.0 ungefär? 

Tror ni det blir en MYCKET stor omställning?

Permalänk: https://www.webforum.nu/p/174059

## #2 — voigtann1, 2008-09-15T07:39Z

<http://labs.developerfusion.co.uk/convert/csharp-to-vb.aspx> Tror inte det blir några problem att byta till vb.net (förstår dock inte riktigt varför?) Det kanske inte gå per automatik direkt men det tar inte lång tid för dig att byta.

Permalänk: https://www.webforum.nu/p/2141707

## #3 — Compusa, 2008-09-15T08:02Z

> **Fredde Mannen skrev:**
>
> Det är nu så att jag kanske måste vänja om mig till Vb istället för C# på det framtida företaget.

Beklagar sorgen.   :(

Permalänk: https://www.webforum.nu/p/2141709

## #4 — Fredde Mannen, 2008-09-15T08:24Z

> **voigtann1 skrev:**
>
> (förstår dock inte riktigt varför?) Det kanske inte gå per automatik direkt men det tar inte lång tid för dig att byta.

 Orsaken är för att jag kommer byta arbetsgivare, och på det nya stället kör de Vb och inte C#. 

Ja huvudsaken är att det går.. kommer säkert bli ett gäng med kompileringsfel pga av min vana av att sätta ; i slutet. :)

Permalänk: https://www.webforum.nu/p/2141711

## #5 — Nickemannen, 2008-09-15T08:50Z

> **Fredde Mannen skrev:**
>
> Orsaken är för att jag kommer byta arbetsgivare, och på det nya stället kör de Vb och inte C#. 
> 
> Ja huvudsaken är att det går.. kommer säkert bli ett gäng med kompileringsfel pga av min vana av att sätta ; i slutet. :)

Övertyga den nya chefen att C# är framtiden :)

Permalänk: https://www.webforum.nu/p/2141715

## #6 — rhdf, 2008-09-15T11:04Z

> **Fredde Mannen skrev:**
>
> Ja huvudsaken är att det går.. kommer säkert bli ett gäng med kompileringsfel pga av min vana av att sätta ; i slutet. :)

Äh Du får väl hålla ögonen öppna efter "blåa vågor" under koden   :p 
.. eller du kanske inte kodar i VS ?

Permalänk: https://www.webforum.nu/p/2141738

## #7 — Fredde Mannen, 2008-09-15T11:53Z

> **rhdf skrev:**
>
> Äh Du får väl hålla ögonen öppna efter "blåa vågor" under koden   :p 
> .. eller du kanske inte kodar i VS ?

Ja, jag får hålla koll på de blåa vågorna.. :) Kommer scanna skärmen efter blå vågor. :OO

Permalänk: https://www.webforum.nu/p/2141744

## #8 — invecklaren, 2008-09-15T13:51Z

<http://www.vbforums.com/showthread.php?t=344688>

Permalänk: https://www.webforum.nu/p/2141761

## #9 — Fredde Mannen, 2008-09-15T14:10Z

> **invecklaren skrev:**
>
> <http://www.vbforums.com/showthread.php?t=344688>

Den var nice! :e Mycket nice! :bire

> Common Issue but for C# peeps moving to VB.NET its probably worth mentioning that you need to use "AndAlso" or "OrElse" instead of "And" or "Or" if you want to short-circuit like C# does by default with && and \|\|

Baaah... så om jag är van att skriva: 

```
if(_name == "test" && _name2 == "test2") {

}
```

Så bör jag göra detta:

```
if _name = "test" AndAlso _name2 = "test2" then

end if
```

och inte

```
if _name = "test" And _name2 = "test2" then

end if
```

Kan ju vara bra att veta! :e

Permalänk: https://www.webforum.nu/p/2141766

## #10 — thevice, 2008-09-15T16:34Z

Lycka till, jag jobbar just nu med ett projekt i VB för kunden ville ha det. Det är ett helvete ser ut som på den gamla ASP tiden.

Permalänk: https://www.webforum.nu/p/2141779

## #11 — Nickemannen, 2008-09-15T21:48Z

Hmm ibland kan man fråga sig om man inte kan köra C# och sedan konvertera skiten, kör man utan en massa trix och fulhack bör det gå ganska bra.

Permalänk: https://www.webforum.nu/p/2141865

## #12 — Fredde Mannen, 2008-09-16T06:48Z

> **Nickemannen skrev:**
>
> Hmm ibland kan man fråga sig om man inte kan köra C# och sedan konvertera skiten, kör man utan en massa trix och fulhack bör det gå ganska bra.

Jo man tycker ju det... 

Men det är inte många konverterare som jag hittat som fixar till ex detta:

Typ:

```
public void SomethingHappends() {
 List<Something> list = new List<Something>();
 list.Sort(delegate(Person p1, Person p2) { return p1.AProperty.CompareTo(p2.AProperty);}): 
}
```

Till då den som skulle kunna vara dess ersättare

```
Public Sub SomethingHappends()
   Dim list As New List(Of Something)()
   list.Sort(AddressOf Somemethod)
End Sub

Public Shared Function Somemethod(Person p1, Person p2) As Integer
   Return p1.AProperty.CompareTo(p2.AProperty)
End Function
```

Men annars funkar ju konverterare bra..

Permalänk: https://www.webforum.nu/p/2141879

## #13 — CatZ, 2008-09-16T08:26Z

Ett tips när du kodar VB.NET är att vrida på Option.Strict, VB.NET gör en massa egna hacks annars.

Permalänk: https://www.webforum.nu/p/2141904

## #14 — Fredde Mannen, 2008-09-16T08:37Z

Tack för det.. :)

Permalänk: https://www.webforum.nu/p/2141907

## #15 — Nickemannen, 2008-09-16T09:06Z

Ta även bort Microsoft.VisualBasic referensen. 
Den är bara till för gamla vb programmerare som inte vill lära sig nytt.
Kommer tyvärr med som default.

Permalänk: https://www.webforum.nu/p/2141913

## #16 — johannormen, 2008-09-16T20:09Z

ooo stackare... lider redan... VB är inte kul alltså... Tykcer det skall införas lagar att alla vb går till C# ;-) hehe... o en lag som heter få mer betalt om man måste sitta med vb om man är van vid C# ;-)

Permalänk: https://www.webforum.nu/p/2142026

## #17 — spango, 2008-09-17T08:24Z

Jag håller med. Du har mina kondoleanser, Fredde.

Permalänk: https://www.webforum.nu/p/2142088

## #18 — CatZ, 2008-09-17T08:47Z

Jag håller med både Johan och spango, kommer själv från VB. Det räcker att läsa den korta beskrivningen om hur .NET grundarna tänkte när de tog fram VB.NET för att inse att den skiten inte är något att ha :)

Permalänk: https://www.webforum.nu/p/2142090

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/174059-gå-över-till-vb-från-c
