Laden...
Avatar #avatar-2269.gif
dani.net myCSharp.de - Member
Software-Developer Wil SG / Schweiz Dabei seit 07.07.2006 175 Beiträge
Benutzerbeschreibung

Forenbeiträge von dani.net Ingesamt 175 Beiträge

04.05.2007 - 10:10 Uhr

In ASP.NET 2.0 haben doch alle Controls die Focus()-Methode


TextBox tb = new TextBox();
tb.Focus();

04.05.2007 - 10:03 Uhr

Original von shorty84
Leider bin ich mir noch recht unsicher was für mich das beste ist... Ich bin eher der "technische Typ" und interessiere mich mehr für Netzwerke, Arbeitsabläufe, Große Systeme etc. Programmierung OK aber ist nicht sooo mein Fall, daher hab ich auch Systemintegrator gelernt anstatt Anwendungsentwickler.

Ich bin gerade in der Hälfte meines Informatik-Studiums und würde dir dringend davon abraten, wenn du nicht so interessiert an Programmierung bist. Es dreht sich so ziemlich alles um Programmierung, wenn man mal von den Grundlagenfächern absieht.
Ich kann jedoch nur für die Schweiz sprechen, weiss nicht obs in DE auch so ist, aber anscheinend gehts auch in diese Richtung.

Von Wirtschaftsinformatik würde ich dir ebenfalls abraten, hat (auch hier, zumindest bei uns) keinen sehr guten Ruf, ausserdem gibt es davon auch bereits einige... (will hier keinem auf die Füsse treten, es gibt natürlich auch tolle Wirtschaftsinformatiker! 🙂 )

03.05.2007 - 10:20 Uhr

mmh... das ist wirklich sehr schade!
Ich wünsche auf jeden Fall alles Gute und danke für die vielen interessanten Posts!

03.05.2007 - 10:06 Uhr

zur Vollständigkeit sei noch erwähnt:


using (Sources objekt = new Sources())
{
    objekt.ShowDialog();
}

Das using ruft Dispose implizit auf, wenn das letzte Statement innerhalb ausgeführt wurde. Damit das funktioniert muss die entsprechende Klasse IDisposable implementieren.

02.05.2007 - 16:27 Uhr
DateTime.Today.AddDays(1);
30.04.2007 - 16:08 Uhr

"1024-30" ist ja keine Zahl sondern bestenfalls ein mathematischer Ausdruck. Die Parse-Funktion parst nur Zahlen.

27.04.2007 - 15:08 Uhr

für einen iterativen Zugriff in der Art


foreach(DataRow row in tempTable.Rows)
{
    string s = row["MyField"].ToString();
}

27.04.2007 - 12:55 Uhr

CLR Profiler

Wenns was kosten darf würde ich dir dottrace von JetBrains empfehlen.

27.04.2007 - 12:49 Uhr

arrListe3 = arrListe1;

oder meinst du was anderes?

27.04.2007 - 11:10 Uhr

ClickOnce ist doch für Windows-Anwendungen und nicht für's Web? Oder hab ich da was verpasst? 😁

20.04.2007 - 22:31 Uhr

_Original von jan223_Ich gehe mal davon aus, das viele User hier von den wertvollen Tips auch finanziell (z.B. beruflicher Einsatz von Beispielcode) profitieren desshalb finde ich es gut eine Möglichkeit zu schaffen sich beim Team zu bedanken die dieses Forum hegen und pfegen.

Beruflich profitiere ich vom Forum insofern, dass ich mir Zeit und Ärger erspare, bis ich ich irgendwo durchblicke... finanziell jedoch profitiert natürlich nur mein Arbeitgeber. Da würde ein Sponsoring bzw. halt einfach Werbung näher liegen.

19.04.2007 - 17:28 Uhr

Ist das https-Zertifikat trusted?

19.04.2007 - 15:00 Uhr

Zwei Objekte besitzen den gleichen Hashcode wenn sie gleich sind.

Gleich heisst, dass beide Objekte dieselbe Referenz besitzen - das ist natürlich nicht der Fall wenn du das Programm zwei mal startest.
Object.GetHashCode() (MSDN)

19.04.2007 - 01:11 Uhr

Original von Peter Bucher
"Alle für einen, einen für alle", "Von der Community, für die Community"...
Ich glaube Dani denkt in eine ähnliche Richtung... aber das ganze ist nicht wirklich leicht, in Worte zu fassen 🙂

👍

19.04.2007 - 00:28 Uhr

Für mich ist der Punkt einfach der, dass solche Spenden dem Community-Gedanken wiedersprechen. Es geht da auch nicht darum, wieviel oder wie wenig dabei rausspringt. Da kann man jetzt hin und her diskutieren bis wir alle Bärte haben - ist ja eigentlich auch egal.

Ich bin keineswegs der Meinung, dass die mycsharp-Jungs kein Geld mit dieser tollen Sache hier verdienen können. Ich hätte da zum Beispiel überhaupt keine Mühe damit, wenn irgendwo Google-Ads rumschwirren würden, und das mycsharp-team mit den Einnahmen daraus jeweils lokale Brauereien fördert (oder so) 😉
Wie gesagt, es geht in keinster Weise darum, ob das irgendjemand verdient hat oder nicht.

Eine Krankenschwester kann von Ihren Patienten auch kein Geld annehmen, egal wie gut sie ihren Job gemacht hat - zugegeben, der Vergleich ist arg weit hergeholt, aber zeigt die Richtung auf.

18.04.2007 - 17:52 Uhr

Indexer geben dir die Möglichkeit, einen Index-artigen Zugriff auf deine Klasse zu erstellen.
Also sowas:


MyClass c = new MyClass();
object o = c[0];

Was ist denn dein Names? So hört sich das an, wie das einfach ein Array oder eine List ist. Für die kannst du natürlich einfach ein Property definieren, die Indexer sind dort schon definiert.

18.04.2007 - 17:27 Uhr

Original von Lion1984
ja wenn es um die bezahlung geht guckt euch mal den ersten vorschlag an von mir.. was spricht da dagegen? oder hat ihn keiner gelesen? 😁
lg

Wie gesagt, für konkrete Projekte im Sinne der Community könnte ich mich durchaus erwärmen.

18.04.2007 - 17:22 Uhr

Original von Lion1984
hier geht es um spenden.. dass muss ja nicht jeder machen, wie herbivore geschrieben hat, ein BENUTZER, also EINER VON UNS hat ihn gefragt, und ich finde, man sollte es "möglich" machen. denn wenn jmd will, wieso denn nicht?

Nein das stimmt so nicht!
Herbivore und sein Team hätten ganz klar für Ihren Einsatz Spenden verdient.
Aber hier geht es meiner Meinung nach um eine Prinzip-Frage. Eine Community wie diese funktioniert auf frewilliger und ehrenamtlicher Arbeit, wie norman_timo das schon gesagt hat.

Es ist ja auch nicht nur das Team das hier mitarbeitet - jedes Community-Mitglied trägt ja seinen Teil dazu bei.

18.04.2007 - 17:17 Uhr

Original von herbivore
Sicher, deshalb ist es ja auch ein kostenloses Forum und soll es bleiben. Das Geld wäre nicht für die Antworten im Forum, sondern eher für die Arbeit, die es bedeutet, das Forum zu pflegen und aufrecht zu erhalten.

Also ist es quasi als Lohn/Entschädigung für die Aufwände des mycsharp-Teams zu verstehen?
Da bin ich klar dagegen, ob die Spenden nun freiwillig sind oder nicht.
Ist auch eine Verhöhnung für alle hier, die nicht dem Team angehören aber trotzdem kräftig antworten... das passt einfach nicht.

Wenn es für das Forum für konkrete Projekte verwendet würde, ist das was anderes.

18.04.2007 - 17:00 Uhr

Für was würde das Geld denn verwendet werden bzw. wohin würde es fliessen?

18.04.2007 - 15:54 Uhr

Generell:
Daten nur füllen wenn !IsPostBack - wie du ja bereits richtig bemerkt hast.

Wieso funktionieren dann deine Edit-Buttons nicht mehr? Diese haben ja ihre eigenen Events wo du drauf reagieren kannst.

18.04.2007 - 14:40 Uhr

Suchst du etwa nach Indexer?
Indexer (MSDN)

Diese lassen sich auch in einem Interface verwenden.


int this[int index]
{
    get;
    set;
}

18.04.2007 - 11:13 Uhr

Was die Auflösung angeht: Man kann nie genug haben 👍 Gerade zum programmieren.

Mein T60 hat ein 14"-Display mit 1400x1050. Vorhin hatte ich ein 17" mit einer 1900er-Auflösung...

beim Display würde ich auf jeden Fall nicht sparen. RAM kannste immer noch nachrüsten, aber beim Display wirds schwierig

17.04.2007 - 21:35 Uhr

Das IsNumericString kannste wieder vergessen 🙂 Mach es wie diskutiert mit long.TryParse.

onlinegurke hat ein Beispiel gepostet. Du kannst so auch Hex-Werte parsen.

17.04.2007 - 15:54 Uhr

Für dein Fall dürfte ein simples


csc /out:My.exe File.cs

reichen.

(Steht übrigens auch dort beim Link den ich geposted habe 😄)

17.04.2007 - 15:27 Uhr

Klassicher Fall für die Doku
MSDN

17.04.2007 - 14:30 Uhr

class Program
    {
        static void Main(string[] args)
        {
            Test1();
            Test2();
        }

        static void Test1()
        {
            long l;
            string test = "test";
            DateTime start = DateTime.Now;
            long.TryParse(test, out l);
            DateTime end = DateTime.Now;
            Console.WriteLine(end - start);
        }

        static void Test2()
        {
            long l;
            string test = "test";
            DateTime start = DateTime.Now;
            try
            {
                l = long.Parse(test);
            }
            catch (FormatException) { }

            DateTime end = DateTime.Now;
            Console.WriteLine(end - start);
        }
    }

17.04.2007 - 13:35 Uhr

Original von herbivore
im Debug- oder im Release-Modus? Das sollte einen entscheidenden Unterschied machen.

Release, im Debug-Mode ist der Unterschied noch grösser

17.04.2007 - 13:13 Uhr

Original von JAck30lena
exceptions waren in c++ teuer. in c# sind sie durchaus tragbar.

aber du solltest nicht die oberklasse abfangen sondern etwas was du erwartest (in diesem fall die InvalidCastException)
zudem kannst du das "e" in "Exception e" weglassen wenn du es sowieso nicht verwendest.

FormatException wär's... gecastet wird da nix.

Original von JAck30lena
prinzipiell aber kannst du immer die tryParse-variante verwenden und alles was nicht geparst werden konnte machst du dann zum string.
(tryparse hat intern auch einen try-catch-block und ist deswegen immer noch nicht teuer.)

Wie kommst du darauf das intern ein try-catch verwendet wird? Das bezweifle ich doch arg... reflector gibt mir recht, und performance-vergleiche ebenso. TryParse ist zwischen 30 und 150% schneller wie ein "manuelles" try-catch.

17.04.2007 - 12:01 Uhr

Gottseidank geht das nicht! Wär ja noch schöner... 🤔

17.04.2007 - 11:18 Uhr

Hi Larsen


if(StrResult.StartsWith("0x"))
                ret = System.Convert.ToInt64(StrResult, 16);
            else if(IsNumericString(StrResult))
                ret = System.Convert.ToInt64(StrResult);
            else
                ret = result;

die Methode IsNumericString muss noch implementiert werden, da gibts ja x Wege dafür.

An deinem Beispiel sind 2 Dinge nicht so schön.

  1. Die String-Prüfung mit Contains ist etwas unsicher, da auch 0x innerhalb eines Strings erkannt würden.
  2. Die Sache mit der Exception. Exceptions sind teuer und sollten nur sinngemäss eingesetzt werden.

Gruss
Dani

17.04.2007 - 10:14 Uhr

Ich halte mein Entwicklungssystem eigentlich komplett Englisch - mehr aus Gewöhnung.

Mit einer deutschen IDE könnte ich wohl gut leben, aber ein deutsches Framework finde ich eher unpraktisch.
Wenn man mal wieder vor einer klassischen WTF-Fehlermeldung sitzt und keinen Schimmer hat worums geht, lässt sich einfach erfolgreicher mit einer englischen Fehlermeldung googlen 😁

17.04.2007 - 09:49 Uhr

Ich arbeite privat auf einem Lenovo T60, 2Ghz Core 2 Duo mit 2 Gig RAM
Im Geschäft arbeite ich auf einer Workstation die ebenfalls mit einem DualCore (AMD) und 2 Gig RAM ausgestattet ist.

Auf beiden Rechnern läuft Vista mit VS und was man sonst halt noch so braucht. Das NB performt jedoch erstaunlicherweise wesentlich besser. Lässt sich wunderbar damit arbeiten. Denke aber auch, dass 2 Gb RAM für eine Entwicklungs-Maschine das Mindeste ist.

16.04.2007 - 11:28 Uhr

wenn es sich dabei um ein string-array handelt, könnte für deine Zwecke string.Join ausreichen.


string.Join(",", myarr);

13.04.2007 - 23:32 Uhr

Doch das geht schon.
Das XML-File muss gleich wie die Assembly heissen (halt mit .xml) und das XML muss im Ziel-Bin-Verzeichnis vorhanden sein

13.04.2007 - 14:56 Uhr

Original von herbivore
Hallo iBrakeTogether,

nein, im BL solltest du nicht/nie auf das GUI zugreifen, also auch keine MessageBoxen anzeigen. Wirf stattdessen eine Exception und behandele diese im GUI.

herbivore

Mit der MessageBox bin ich einverstanden, mit der Exception nicht so.
Das Werfen einer Exception sollte immer eine Ausnahme sein (wie der Name schon sagt).
Die Tatsache, dass in der Mannschaft kein Platz mehr ist, ist jedoch ein zu erwartender Zustand.

Ich würde eine zusätzliche Möglichkeit (z.B. Methode) bieten, die man aufrufen kann, um zu prüfen ob noch Platz vorhanden ist. Dann kannst du im GUI zuerst diese aufrufen, und dann schlussendlich bei Erfolg noch die Add-Methode.
Dort kannst du dann ja immer noch, im Falle dass die Mannschaft trotzdem schon voll ist (zB. weil die Prüfung nicht vorgängig erledigt wurde), eine Exception werfen.

13.04.2007 - 14:37 Uhr

Original von sra
Ich geh mal davon aus, dass das changeMode Event ...

Original von dani.net
benutz doch einfach die ChangeMode-Methode.

Finde den Unterschied! 😉
Auflösung: ChangeMode ist kein Event sondern eine Methode, d.h. einfach Aufrufen und fertig.

13.04.2007 - 13:37 Uhr

benutz doch einfach die ChangeMode-Methode.

Ich finde zum Thema so nichts.

😁 In der Doku steht sowas

04.04.2007 - 08:37 Uhr

In so einer Situation erachte ich aber den Weg über Attribute als sinnvoller.

03.04.2007 - 13:26 Uhr

das liegt sogar ziemlich sicher daran 👍
Hast du den Contract und die Implementation in verschiedenen Projekten? Ich nehme mal an, dass die Projektreferenzen falsch gesetzt wurden.

03.04.2007 - 10:33 Uhr

Hi aldababsack

Das Problem liegt wohl hier:


fs.Write(MyData, 0, ArraySize);

ArraySize ist 0-basiert, d.h. bei 3 Einträgen hat es den Wert 2. Der letzte Parameter von fs.Write gibt allerdings eine Anzahl an, das würde dann also der ArraySize + 1 entsprechen (oder einfach gleich das Length-Property des Arrays verwenden)

03.04.2007 - 10:26 Uhr

Ich tippe mal, dass das nix mit WCF zu tun hat. Die Änderung muss einfach im Interface wie in der Implementierung nachvollzogen werden, aber sonsts würds ja nicht mal mehr kompilieren 😁

Sicher dass du überall auf aktuelle Assemblies zugreifst / referenzierst?

02.04.2007 - 12:18 Uhr

Seh grad noch, dass du eine Rollen-basierte Navigation möchtest. Das gibts eigentlich schon alles built-in in ASP.NET 2.0.
Du kannst im Web.sitemap die erlaubte(n) Rolle(n) bei den Navigationspunkten angeben - was benutzt du denn für ne Authentifizierung?

02.04.2007 - 12:17 Uhr

Page.User.Identity.Name

30.03.2007 - 09:59 Uhr

Also eigentlich steht ja alles da 😁
Wenn du als SessionMode 'StateServer' oder 'SQLServer' angibst, muss alles was in der Session gespeichert wird, serialisierbar sein. Wenn du eigene Objekte darin abspeicherst, musst du diese demzufolge serialisierbar machen (wenn die Klasse selbst nur serialisierbare Members enthällt, reicht das setzen des Attributes "Serializable'