Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von plongo
Thema: Konzeptionelle Frage
Am im Forum: Netzwerktechnologien



ja eben die Forum-Suche!

Thema: Eigene Exception - Richtige Anwendung
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Halo bubblez,

danke für deine Antwort...

ich muss mir erst mal deine Antwort richtig durchlesen und auf meine klassen umzudenken. Meld mich nochmal.

nicht falsch verstehen, die GetAllUser ist nur eine Beispiel-methode gewesen. diese habe ich nicht im Einsatz. Aber dennoch danke für den Hinweis!!!!

edit:
Ok versteh ich das richtig.

Beispiel (dies hab ich auch in Anwendung):


namespace System {
	namespace Library {
          public class LibraryException : Exception {
            public LibraryException() :
                base("Fehler aufgetreten.") {}
            
            public LibraryException(string message) :
                base(message) {}
            
            public LibraryException(string message, Exception innerException) :
                base(message, innerException) { }
        }

		public static class Err {
            public static void FileLog(Exception errFunc, string errFunction, string errClass) {
                try {
                    FileLog(errFunc, errFunction, errClass, "-");

                } catch (Exception err) {
                    EventLog oEvLog = new EventLog();
                    oEvLog.Log = "Application";
                    oEvLog.Source = "Application";
                    oEvLog.WriteEntry(err.ToString(), EventLogEntryType.Error);
                }
            } // FileLog
        } // Err
     } // Library
} // System

----

namespace System {
	namespace Library {
		public class Database {
			public static int RecordCount(string sCommandText) {
				try {
					if (Library.General.Nz(sCommandText, true) == false) {
						// Deklaration - Objekte
						Access.Database oDatabase = new Access.Database();
						DbDataReader oDReader;
						int iCount;

                        			// DbEngine
                        			setDbEngine();

						// Oeffnen
                       				 oDatabase.DatabaseEngine = _databaseEngine;
                        			oDatabase.ConnectionString = _connString;
						oDatabase.Open();
						
						// Zaehler zuruecksetzen
                       				 oDatabase.CommandText = sCommandText;
						oDReader = oDatabase.ExecuteReader();
                        			iCount = oDatabase.Count;
				
						// Schliessen
						oDReader.Close();
						oDatabase.Close();
						
						// Zuruecksetzen
                       				 return iCount;
					
					// ansonsten
					} else {
						return 0;
					}
	
               			} catch(Access.DatabaseException err) {
                		    Library.Err.FileLog(err, "RecordCount", "System.Library.Database", sCommandText);
				} catch (Exception err) {
                		    Library.Err.FileLog(err, "RecordCount", "System.Library.Database", sCommandText);
               			     throw new Library.LibraryException(err.ToString(), err);
				}

               			return 0;
			} //RecordCount
        	} // Database
	} // Library
} // System

Thema: Eigene Exception - Richtige Anwendung
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

erstmal danke für deine Antwort.

1.
OK!

2.
Ich möchte damit erreichen die Exception weiterzugeben! Denn bisher war es so das, wenn ein Fehler innerhalb der Database-Klasse aufgetreten ist, diese zwar protokolliert wurde, aber der Benutzer Meldung bekommen habe. Ist ja auch klar, da ich bisher in der Fehlerbehandung in der Database-Klasse keine Vorkehrungen getroffen habe und dort hat nicht machen kann. Dort habe ich ja nur protokolliert.

Jetzt wollte ich eben duch meine eigene Exception erreichen, das wenn ich meine Databease-Klasse verwende und dort nun ein Fehler auftritt, eben dies über diese eigene (Database)Exception abfangen kann.


Nochmal ein kleines Beispiel:


public void GetAllUser() {
	try {
		System.Access.Database oDb = new System.Access.Database();

		// Verbindun zur DB!
		oDb.Open();

                // Daten holen
		oDb.CommandText = "SELECT * FOM USER";
                System.Data.SqlClient.SqlDataReader oDReader = oDb.ExecuteReader();
		
		// Daten durchlaufen
		while (oDReader.Read()) {
			..
			..
		}

		// Schliessen
		oDReader.Close();
		oDb.Close();	

	} catch(System.Acccess.DatabaseException err) {
		// Fehler protokollieren und User meldung geben
		// Fehler in der Databank-Klasse
	} catch(System.Exception err) {
		// Fehler protokollieren und User meldung geben
	}
}

Wie du siehst ist der Commandtext ein Syntaxfehler drin "FOM". Wenn ich dies nur ausführe, erhalte ich eine Exception in meiner DB-klasse. Und genau diese Excepton möchte durch meine eigene weitergeben!

Geht das so wie ich dies gemacht habe?
Ist dies so richtig implementiert?
Habe ich diese so richtig im catch-Block abgefangen?

Danke & Gruss

Thema: Konzeptionelle Frage
Am im Forum: Netzwerktechnologien

hi,

suche mal verwenden!!!

Thema: Eigene Exception - Richtige Anwendung
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

ich habe mir für meine Datenbankklasse, ebenfalls eine eigene Exception-Klasse geschrieben. Sieht wie folgt aus:


        public class DatabaseException : Exception {
            public DatabaseException() :
                base("Fehler aufgetreten innerhalb der Datenbankklasse.") {}

            public DatabaseException(string message) :
                base(message) {}

            public DatabaseException(string message, Exception innerException) :
                base(message, innerException) { }
        } // DatabaseException

Innerhalb meiner Datenbankklasse:


		public class Database : IDisposable {
			public Database() {
				try {
					// Property setzen
                    _databaseEngine = (DbEngine)Convert.ToInt32(ConfigurationManager.AppSettings.Get("ACCESS.DATABASE_ENGINE"));
					_connString = ConfigurationManager.AppSettings.Get("ACCESS.DATABASE_CONNSTRING");
                    _count = 0;

				} catch (Exception err) {
                    Library.Err.FileLog(err, "Database", "System.Access.Database");
                    throw new DatabaseException(err.ToString(), err);
				}
			} // Database
.
.
.
}

Falls jetzt im catch-Block eine Fehler auftritt, wird dieses dann protokolliert. Desweiteren wird dann die eigene DatabaseException geworfen!

Damit möchte ich erreichen, das wenn ich meine Datenbankklasse in einer Methode\Funktion benutze, wo ich natürlich mit try-catch Block arbeite, dort dann die auf diese Exception reagieren kann.


publiv void blabla() {
  try {
    // tue irgendeine Db-Operation

  } catch(Access.DatabaseException err) {
     Library.Err.FileLog(err, "RecordCount", "System.Library.Database", sCommandText);
  } catch (Exception err) {
     Library.Err.FileLog(err, "RecordCount", "System.Library.Database", sCommandText);
  }
}

Mein Problem bisher war, das bei einen Fehler in der DB-Klasse, dies zwar protokolliert wurde, aber ich nicht der Anwendung drauf reagieren konnte. Z..b möchte in meiner WebApp. den Benutzer auf eine Fehlerseite schicken!

P.S: Suche benutzt, aber nichts brauchbares gefunden!

Thema: Methode mit gleichen Namen, mit und ohne Rückgabewert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ok, danke.

klar die Anwendung sehe ich nur bei mehrere Rückgaben sinnvoll und würde ich auch nur dort verwenden. So wies es eben bei der ExecuteOracleNonQuer-Methode gemacht wird!

Thema: Methode mit gleichen Namen, mit und ohne Rückgabewert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

ja habe ich gestern bei der ExecuteOracleNonQuery kennengerlernt.

Dieses hat ja zum Vorteil das ich ja gleichzeitig mehrer Rückgaben haben kann oder welche Vorteile hat dies noch?

Thema: Methode mit gleichen Namen, mit und ohne Rückgabewert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Danke,

sorry! Typisch Anfänger X(

Thema: Methode mit gleichen Namen, mit und ohne Rückgabewert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Axo also ich kann meine Funktion mit Rückgabewert auch so verwenden das diese nicht einen Exception wirft, wenn ich diese wie folgt verwende.


Db.ExecuteOracleNonQuery()

ohne Zuweisung des Rückgabewerts!

Die beiden Methoden sind bis auf die Rückgabewerte, identisch.

Thema: Methode mit gleichen Namen, mit und ohne Rückgabewert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Naja, jetzt bin ich ja schlauer

Thema: Methode mit gleichen Namen, mit und ohne Rückgabewert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ok, danke für eure Antworten.

Bisher habe ich schon mit Überladungen gearbeitet, dort waren dann die Parameterliste unterschiedlich.

Ich dachte das die eine mit und odere ohne Rückgabewert ist, könnte der Compiler dies unterscheiden bzw. über einen bestimmten Modifizierer.

gut ich habe jetzt einfach mal eine Parameter mit angeben und konnte erfolgreich kompilieren!

Thema: Methode mit gleichen Namen, mit und ohne Rückgabewert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hi, danke für deine Antwort.

Es ist ja möglich Funktionen zu überladen...


public void send() {
..
}

public void send(bool test) {
...
}

oder eben mit rückgabewert:


public string test() {
..
}

public string test(bool test) {
...
}

nur in meinen Fall nicht, das die Methoden sich ja unterscheiden, da die eine rückgabe hat und die andere nicht!

Ich würde diese gerne, wenn mögich so machen. Da ich auch die Methode anwenden willst ohne einen Rückgabewert zu haben.

Thema: Methode mit gleichen Namen, mit und ohne Rückgabewert
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

kurze Frage ich eine Methode, einmal und einmal ohne Rückgabewert.


            public void ExecuteOracleNonQuery() {
               ...
            }

            public OracleString ExecuteOracleNonQuery() {
               ...
            }

Leider erhalte ich beim kompilieren meiner Klasse einen Fehler:
Zitat
Der Typ "System.Access.Database" definiert bereits einen Member namens "ExecuteOracleNonQuery" mit den gleichen Parametertypen.

Klar ich verstehe natürlich warum dieser Fehler auftritt.

Meine Frage ist, wie ich innerhalb meiner Klasse diese beiden Typen deklarieren muss, damit Klasse kompiliert werden kann. Welche Modifizierer benötige ich dort?

Ich habe schon gesucht, konnte aber noch nichs gutes finden. Ich weiss auch nichts direkt nach was ich suchen soll bzw. wie ich diese nennen soll.

Danke

Thema: Controls als Array?
Am im Forum: Web-Technologien

Wenn du weisst das du eine gleiche Anzahl von Controls hast bzw. zähler, da kannst du einfach innerhalb einer Schleife, auf die Controls zurückgreifen....


for(int i = 0, i ≥ Index, i++) {
   DropDownlist ddl = (DropDownList) Page.FindControl("ddlid"+i)
}

so ungefährt halt!

Thema: Controls als Array?
Am im Forum: Web-Technologien

Kannst aber mit der FindControl methode evtl. gut arbeiten...

Thema: Controls als Array?
Am im Forum: Web-Technologien

Hi,

du kannst das sehr einfach eine Panel erstellen und diesem dann Controls geben. dies geht über Controls.Add!

Über eine Schleife könntest du dir deine DropDownlist erstellen und dem Panel hinzufügen! In der Schleife kannst du dann jeweils auch die Id setzen!

Thema: Versand Email (EHLO)
Am im Forum: Netzwerktechnologien

Hallo Tomek,

vielen Dank für deine Antwort. Das hilft mir auf jedenfall weiter.... mal schauen ob sich das was machen lässt.

Problem ist halt das diese Maschine unser Webserver ist und die Mails werden halt über die Web-Applikation verschickt!

Thema: Multifunktionsgerät Drucker, Fax ....
Am im Forum: Smalltalk

Zitat
Original von Rainbird
Investiere lieber 500 € für ein All-In-One Gerät mit integriertem Laserdrucker, als 150 € für so ein Tintenspritzer-Ding rauszuwerfen, bei dem jede Woche die Tinte eintrocknet und Du nach 200 Seiten eine neue Patrone kaufen muss (die fast so teuer ist, wie das ganze Gerät).

Danke!

Werde ich beherzigen!

Thema: Multifunktionsgerät Drucker, Fax ....
Am im Forum: Smalltalk

Zitat
Original von herbivore
Hallo plongo,
Zitat
geringe Unterhaltungskosten
Zitat
Preisvorstellung bis 150 €.
Das ist - glaube ich - ein Widerspruch in sich. Andereseits dürftest du bei einem Preis bis 150 Euro sowieso nicht wirklich viel Auswahl haben, oder irre ich mich?

Wahrscheinlich hast du recht!
Höchstens bei eBay hab ich eine gute Auswahl in dieser Preisklasse, mal davon abgesehen ob die Geräte jetzt top oder flop ist!

Es muss ja kein Neugerät sein!

Thema: Windows Vista kommt im Januar 2007
Am im Forum: Smalltalk

selbst habe ich es noch nicht ausprobiert! Bin mal gespannt darauf!

Thema: Windows Vista kommt im Januar 2007
Am im Forum: Smalltalk

@Kai: hatte mal vor einer Zeit ein Bericht über Vista gelesen! Und auch über den leistungsfressenden Desktop. Naja und nachdem Bild zu urteilen, hab ich dies dann auch mal so vermutet!

@gn0m0r
Das hab ich mir schon gedacht! Ich hab zwar ne 128 MB Karte, aber ich will ja nicht meine ganze Leistung in den Desktop stecken, Mal übertrieben gesagt

Thema: Windows Vista kommt im Januar 2007
Am im Forum: Smalltalk

Nachdem Screenshoot zu urteilen, muss man ja eine ganze schöne Leistung haben um so zu arbeiten!

Thema: Multifunktionsgerät Drucker, Fax ....
Am im Forum: Smalltalk

Hi,

ich bin gerade auf der Suche nach einem Multifunktionsgerät für Zuhause.

Wichtig sind mir dabei:
- Druckfunktion (keine Fotoqualität)
- Faxfunktion (senden/empfangen)
- geringe Unterhaltungskosten
(Anschaffung Patronen, Kosten für Druck/Fax)
- wenn möglich "klein" (habe nicht sehr viel Platz)

*optional
- Scannen bzw. Kopieren
- Wlan
- Software, mit der das Gerät direkt ein Fax verchicken kann, ohne vorherigen Ausdruck.

Preisvorstellung bis 150 €.

Ich denke das hier ja einige von euch solch ein Gerät daheim stehen haben. Per Google hab ich natürlich schon gesucht und gefunden, danach hätte ich 5 verschiedenen Geräte daheim stehen! Deshalb frage ich euch mal.

Vielen lieben Dank!

Thema: TabPage wird nicht versteckt
Am im Forum: GUI: Windows-Forms

Hab was gefunden.
Tab Control - Einzelne Tabs ausblenden

Sorry, das ich nicht die Forumsuche benutz habe!

Thema: TabPage wird nicht versteckt
Am im Forum: GUI: Windows-Forms

NEIN!

Thema: TabPage wird nicht versteckt
Am im Forum: GUI: Windows-Forms

Hallo,

eigentlich eine simple Sache

Ich habe eine Überprüfung und möchte auf dieser ein TabPage zeigen oder eben verstecken...


if Convert.ToInt32(Library.Database.GetRecordCount("SELECT tApId FROM tPersAp WHERE (tApZuPersId = '" & Me.cbPers.SelectedValue.ToString & "')")) > 0 Then Me.tProsoAnsp.Show() Else Me.tProsoAnsp.Hide()

dennoch wird das TabPage nie versteckt! Obwohl dies nach der Überprunfung so sein müsste. Habe dies mit BreakPoints schon im Code und Messagebox getestet

Thema: Versand Email (EHLO)
Am im Forum: Netzwerktechnologien

Mein Code sieht momentan so aus:

'// Kein Empfaenger angegeben, dann...
if Library.General.Nz(_To, true) = false then
'// Deklaration
Dim oEmail As MailMessage = New MailMessage()
Dim arrlAttachElement As Object
Dim strUsername AS String
Dim strPassword as String

'// Benutzername und Passwort ermitteln
strUsername = ConfigurationSettings.AppSettings("LIBRARY.EMAIL_USERNAME")
strPassword = ConfigurationSettings.AppSettings("LIBRARY.EMAIL_PASSWORD")

'// Eigenschaften zuweisen
oEmail.From = Library.General.Nz(_From, true, true, ConfigurationSettings.AppSettings("LIBRARY.EMAIL_MAILFROM"))
oEmail.To = _To
oEmail.Cc = _Cc
oEmail.Bcc = _Bcc
oEmail.Subject = _Subject
oEmail.Body = _Body
oEmail.BodyEncoding = Encoding.UTF8
if _MailFormatHtml = true then oEmail.BodyFormat = MailFormat.Html else oEmail.BodyFormat = MailFormat.Text
oEmail.Priority = MailPriority.High

oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", _SmtpServer)
oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", _SmtpPort)
oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", _SmtpSend)

'// Authentifizierung
Select Case _SmtpAuth
Case "0" 'Anonymous Authentication
oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "0")

Case "1" 'Basic (clear-text) Authentication
if (Library.General.Nz(strUsername, true) = true) or (Library.General.Nz(strPassword, true) = true) then Throw New Exception("Benutzername und/oder Password sind nicht vorhanden (NULL).")
oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1")
oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", strUsername)
oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", strPassword)

Case "2" 'NTLM Authentication
oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "2")

Case else 'Anonymous Authentication
oEmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "0")

End Select

'// Durchlaufen und Parameter an Command-Objekt setzen
For Each arrlAttachElement In arrListAttach
oEmail.Attachments.Add(arrlAttachElement)
Next

'// Email versenden

SmtpMail.SmtpServer = _SmtpServer

SmtpMail.Send(oEmail)
end if


Die rote Zeile habe ich jetzt noch mit eingebaut. mal guckn ob das jetzt klappt!

Thema: Wie lange arbeitet ihr den (pro Tag oder pro Woche)?
Am im Forum: Smalltalk

jo 40 stunden Wochen, wenns ruhig ist (und das ist es momentan)

Thema: Versand Email (EHLO)
Am im Forum: Netzwerktechnologien

Hi, danke für deine Antwort. Aber da versende ich ganz normal eine Email, wie ich es bisher auch tue. Problem ist nur eben diese rot markierte Zeile, die müsste ich irgendwie beeinflussen!

Was ich machen könnte wäre ja eine eigene Email Implementierung machen über die Klasse Networkclass! Aber das scheint mir ein wenig zu aufwendig!

Thema: Versand Email (EHLO)
Am im Forum: Netzwerktechnologien

Andere Frage. Kann ich irgendwo konfigurieren, da er nicht nur die IP mitgibt sondern auch den Rechnername. Das "unknown" darf da nicht sein! Da meckert unser Mailserver rum!

Zitat
Received: from webbox644 (unknown [xxx.xxx.xxx.xxx])
by *** (* GmbH) with ESMTP id B112F93014
for <*@*.de>; Mon, 10 Apr 2006 15:56:10 +0200 (CEST)

Ansonsten muss ich eine eigene Implementierung der Mailklassse machen und kann nicht mehr über System.Web.Mail gehen!