---
title: "egen funktion"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/132016-egen-funktion"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "tobie"
published: "2005-07-29T13:02:10.000Z"
updated: "2005-07-30T09:13:22.000Z"
replies: 9
views: 356
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/132016-egen-funktion"
---

# egen funktion

## #1 — tobie, 2005-07-29T13:02Z

Hej hej. nu är jag här igen, med ännu fler frågor.
Nu när mitt pagesystem fungerar, så tänkte jag göra som jag gjorde i PHP. Nämligen att jag med hjälp utav en egen funktion "översätter" det som finns i "?pageId=".

Min kod:

```
<script language="VB" runat="server"> 
		Sub Page_Load() 
		Public Function MakeRubrik(ByVal strText as string) as string
			strText.Replace("main","startsidan")
			strText.Replace("info","information")
			strText.Replace("spel","onlinespel")
			strText.Replace("lenk","länkarkiv")
			strText.Replace("gestbok","gästbok")
			return strText
		End Function
		MakeRubik.text = MakeRubik(Request.Querystring("pageId")) 
		End Sub 
	</script>
```

och för att kalla på översättningen:

```
<asp:Label id="MakeRubik" runat="server" />
```

men!
error:

```
 Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: BC30289: Statement cannot appear within a method body. End of method assumed.

Source Error:

Line 2:  	<script language="VB" runat="server"> 
Line 3:  		Sub Page_Load() 
Line 4:  		Public Function MakeRubrik(ByVal strText as string) as string
Line 5:  			strText.Replace("main","startsidan")
Line 6:  			strText.Replace("info","information")
```

vad kan detta bero på?

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

## #2 — Pace, 2005-07-29T13:04Z

Du har lagt funktionen MakeRubrik inom Page_Load. Separera de två så ska det gå bättre.

Gör om: 

```
Sub Page_Load()
Public Function MakeRubrik()
End Function
End Sub
```

Till: 

```
Sub Page_Load()
End Sub

Public Function MakeRubrik()
End Function
```

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

## #3 — Dino, 2005-07-29T13:09Z

Använd IsPostBack så att MakeRubik metoden endast körs en gång.

```
<script language="VB" runat="server"> 
   Sub Page_Load() 
      If Not IsPostBack Then
         MakeRubik.text = MakeRubik(Request.Querystring("pageId")) 
      End If
   End Sub 
</script>
```

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

## #4 — tobie, 2005-07-29T13:39Z

snabba fina svar! :)

men.:(

```
 Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: BC30451: Name 'strWriteRubrik' is not declared.

Source Error:

Line 11:   		Sub Page_Load() 
Line 12:       		If Not IsPostBack Then
Line 13:          		strWriteRubrik.text = MakeRubik(Request.Querystring("pageId")) 
Line 14:       		End If
Line 15:    		End Sub
```

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

## #5 — Guffa, 2005-07-29T13:47Z

strWriteRubrik finns inte.

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

## #6 — tobie, 2005-07-29T14:14Z

jag la till dim strWriteRubrik ovanför strWriteRubik.text = ...

men får då istället:

Name 'MakeRubik' is not declared.

men jag gör ju den till en funktion precis ovanför?
		Public Function MakeRubrik(ByVal strText as string) as string
			strText.Replace("main","startsidan")
			strText.Replace("info","information")
			strText.Replace("spel","onlinespel")
			strText.Replace("lenk","länkarkiv")
			strText.Replace("gestbok","gästbok")
			return strText
		End Function

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

## #7 — desdecado, 2005-07-29T19:30Z

Du har glömt ett 'r' i makerub**r**ik

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

## #8 — tobie, 2005-07-29T19:55Z

```
		Function MakeRubrik(ByVal strText as string) as string
			strText = Replace(strText, "main", "startsidan")
			strText = Replace(strText, "info","information")
			strText = Replace(strText, "spel","onlinespel")
			strText = Replace(strText, "lenk","länkarkiv")
			strText = Replace(strText, "gestbok","gästbok")
			return strText
		End Function
```

blev korrekt lösning

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

## #9 — desdecado, 2005-07-29T20:43Z

Du kan även skriva:

return strText.replace("main", "startsidan").replace("info","information").replace("spel","onlinespel")

..etc, om du vill förkorta koden lite.

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

## #10 — P, 2005-07-30T09:13Z

Eller använda dig av StringBuilder klassen om du vill spara lite prestandard.

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/132016-egen-funktion
