webForumDet fria alternativet

Kan en cs-fil importera en cs-fil?

.NET

29 svar · 693 visningar · startad av Skarre · sida 2 av 2

Frågan, av Skarre

Jag tänkte börja laborera lite med ASP.NET igen och undrar om man kan importera en cs-fil till en annan cs-fil. Det skulle vara smidigare att ha en okompilerad cs-fil istället för en DLL medan man utvecklar för att slippa kompilera varje gång man gör en liten ändring i någon klass.

Läs frågan i sin helhet →
Medlem sedan apr. 20012 427 inlägg
#21

NETwork skrev:

Faran i att kod genereras automatiskt tycker jag är överdriven och det är ju inte svårt att ta reda på vad koden gör om man vill.

Det är dock inte det som är tanken för min del, jag vill, som sagt, lära mig ASP.NET med C# från grunden och inte sitta och stirra på hundratals rader kod som genererats av VS.NET som jag inte har en aning om vad den gör.

cyprys skrev:

VS.NET är ett advancerat verktyg som erbjuder väldigt mycket om man bara ger sig fan på att lära sig det. ;)

Det tror jag alla håller med om, men i mitt fall är det, som sagt, inte det som är tanken. Se ovan.

Medlem sedan maj 200010 687 inlägg
#22

Jag provade VS.NET lite och tyckte det verkade schysst. Intellisense, autoindentering och andra trevliga funktioner gillade jag.
Man blir inte en bättre utvecklare av att använda notepad, man blir bara en långsam utvecklare.

Medlem sedan maj 20012 812 inlägg
#23

Som sagts innan, du får jättegärna anvädna notepad och ingen tvingar dig till att använda VS.NET, vi försöker bara hjälpa dig så du utvecklar snabbare.

lära mig ASP.NET med C# från grunden och inte sitta och stirra på hundratals rader kod som genererats av VS.NET som jag inte har en aning om vad den gör.

Jag håller dock inte med dig att 100 rader kod genereras och det är inte så svårt att förstå vad den gör, speciellt inte när du inte behöver vet eller skall ändra i den koden.

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace WebApplication2
{
	/// <summary>
	/// Summary description for WebForm2.
	/// </summary>
	public class WebForm2 : System.Web.UI.Page
	{
		private void Page_Load(object sender, System.EventArgs e)
		{
			// Put user code to initialize the page here
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{    
			this.Load += new System.EventHandler(this.Page_Load);
		}
		#endregion
	}
}

Så här ser codebehind sidan ut när du skapa en ny ASPX sida i VS.NET, det är inte mycket där som du inte stött på när du kodad för hand, kan tänka mig att det är InitializeComponent() och onInit() som du inte använder, och vad de gör är helt enkelt att de kopplar ihop funktion i din codebehindkod med olika event som händer när sidan körs.

Som du ser så finns koden this.Load += new System.EventHandler(this.Page_Load);

Den berättar att när sidan laddas så skall funktionen Page_Load köras. Om du lägger till en knapp från VS.NET och vill att en funktion skall köras när man trycker på knappen, så kommer koden för det att läggas här, samt att funktionen kommer att skapas på sidan.

Nu behöver man inte använda sig av designen, jag gör det sällan, utan skriver in min ASPX och HTML kod direkt i editorn och skriver mina egna funktionsanrop för olika event, det ger mig "mer koll" (som du uttrycker dig) över min kod, men samtidigt använder jag alla fördelar med VS.NET.

- M

Medlem sedan jan. 20012 204 inlägg
#24

Erik Juhlin skrev:

Jag provade VS.NET lite och tyckte det verkade schysst. Intellisense, autoindentering och andra trevliga funktioner gillade jag.
Man blir inte en bättre utvecklare av att använda notepad, man blir bara en långsam utvecklare.

Kodar man i notepad blir man en bättre kodare i notepad. Kodar man i vs.net blir man en bättre kodare där! :)

Medlem sedan apr. 20012 427 inlägg
#25

Finns det något sätt att ställa in VS.NET så att den inte lägger till all denna kod i codebehind-filerna och allt skräp som läggs in i vanliga aspx-sidor (meta-taggar o.s.v.)?

Medlem sedan apr. 20012 266 inlägg
#26

För att ändra "default" koden kan du editera filer som ligger under C:\Program Files\Microsoft Visual Studio .NET 2003\VC#\DesignerTemplates\1033. Finns även på andra platser under C:\Program Files\Microsoft Visual Studio .NET 2003\VC#

Vet inte riktigt hur man får bort meta taggarna, men vad spelar det för roll egentligen? taggarna är endast där för att VS.NET ska veta vilket schema den ska köra med. Andra browsers ignorerar dem.

Medlem sedan maj 20012 812 inlägg
#27

...\Microsoft Visual Studio .NET\Vb7\VBWizards\WebForm\Templates\1033

eller

\Microsoft Visual Studio .NET\VC#\VC#Wizards\CSharpAddWebFormWiz\Templates\1033

Där finns templaten för aspx sidan och där borde du kunna ta bort "meta tagarna"

- M

Medlem sedan apr. 20012 427 inlägg
#28

Tack för hjälpen! Jag får väl se om jag vågar mig ifrån mitt kära DW MX. :e

Medlem sedan maj 20012 812 inlägg
#29

Du kommer inte att ångra dig :)

- M

Medlem sedan apr. 20012 266 inlägg
#30

Gladh skrev:

Där finns templaten för aspx sidan och där borde du kunna ta bort "meta tagarna"

- M

Tar man bort metatagarna kan VS.NET få problem med intellisense

294 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
135 ms — deklarationer (db)
0 ms — hämta statistik (cache)
142 ms — hämta tråd, inlägg och bilagor (db)
148 ms — ändringar (db)