Laden...

Forenbeiträge von jaipur Ingesamt 127 Beiträge

16.12.2020 - 13:28 Uhr

Hm, momentan habe ich so eher das Bauchgefühl das ich bei FileSystemWatcher den NotifyFilter nicht so richtig gesetzt habe.

Wenn es mich nur interessiert ob die Datei erstellt oder geändert worden ist, wie müsste dieser aussehen?

Mein Vorschlag:


var notifyFilters = NotifyFilters.CreationTime | NotifyFilters.LastWrite;

Und natürlich noch die Events:


fileSystemWatcher.Changed += FileSystemWatcher_Changed;
fileSystemWatcher.Created += FileSystemWatcher_Created;

Sowie die Freigabe:


fileSystemWatcher.EnableRaisingEvents = true;

Vielen Grüße

16.12.2020 - 11:59 Uhr

Hallo,

ich habe mit dem Visual Studio ein Setup Projekt erstellt mit dem Hauseigenen Tool (Microsoft Visual Studio Installer Projects).

Unter den Einstellungen bei dem Setup Projekt habe ich ein den Wert InstallAllUsers auf True gesetzt. Außerdem erstelle ich von der exe (Primärausgabe) eine Verknüpfung und lege diese auf den Users Desktop.

Was mir jetzt aber aufgefallen ist, wenn genau dieser Wert InstallAllUsers auf True steht, bekommt die Verknüpfung auf dem Desktop auf dem Icon zwei blaue Pfeile. Wenn aber InstallAllUsers auf False steht, kommen diese beiden Pfeile nicht. Diese Pfeile bekommt man unter Windows wenn man einen Order komprimiert: Ordner auf dem Desktop anlegen, rechte Maustaste, Eigenschaften, Erweitert, "Inhalt komprimieren, um Speicherplatz zu sparen".

Ich habe dieses Programm jetzt auf zwei Windows 10 Rechnern installiert, diese blauen Pfeile kommen aber nur auf dem einem Windows 10 Rechner. Bei dem anderen Windows 10 ist es nicht von Bedeutung wie ich das Programm installiere, ob ich nun Alle Benutzer oder den Aktuellen Benutzer auswähle.

Das Problem was ich mit den blauen Pfeilen bekomme ist, dass ich mit FileSystemWatcher einen Ordner auf genau eine Datei hin überprüfe, ich reagiere nur auf Created und Changed. Wenn genau diese Datei nun erstellt oder verändert wird, wird dieses nicht erkannt. Wenn ich jetzt aber im Explorer in den Ordner navigiere und die Datei mit einem Doppelklick öffne, lösen erst dann die Events aus...

..ich weiß leider nicht woran es liegen könnte, an Windows, an dem Setup Projekt oder am FileSystemWatcher - vielen Dank!

Viele Grüße

23.04.2020 - 17:30 Uhr

Hallo und vielen Dank für die nützlichen Infos!

Ich werde den Dienst so belassen wie er ist und mich auf die Fehlersuche begeben, ich denke dies es der richtige Weg ist 😃

Nochmals vielen Dank!

23.04.2020 - 15:33 Uhr

Hallo und vielen Dank für die schnelle Antwort!

40 C# Dateien mit 282 KB ist für mich schon ein größeres Programm 😉

Ich dachte immer ein Dienst macht nur gerade so viel wie notwendig und delegiert wenn möglich alles andere. Daher hatte ich die Idee dass es sinnvoller wäre ein Programm zyklisch aufzurufen, zu mal es doch auch einfacher ist ein gewöhnliches Programm besser zu handhaben als einen Dienst?

23.04.2020 - 15:07 Uhr

Hallo Community!

Ich habe da ein Programm welches als Windows-Dienst seine Dienste verrichtet, funktioniert auch so mehr oder weniger. Das Problem, der Dienst stürzt manchmal ab. Um dieses erst ein Mal in den Griff zu bekommen hatte ich mir überlegt aus dem Dienst ein gewöhnliches Programm zu machen und über einen neuen Dienst dann dieses Programm zyklisch aufzurufen. Wobei der Zyklus gerne mehrer Zyklen dauern darf, zeitkritisch ist das alles nicht.

Bei dem aktuellen Dienst handelt es sich um ein sehr großes Programm. 40 C#-Quellcode-Dateien (282KB), bei dem neuen Dienst würde es sich nur um ein sehr kleines Programm handelt, welcher nur den alten Dienst als Programm startet und am besten auch noch alles protokolliert.

Oder einfach alles so lassen und mit einem neuen Dienst den alten Dienst bei Bedarf neu starten?

Vielen Dank im Voraus

31.03.2015 - 08:32 Uhr

Von Deinen Schilderungen her klingen die Anforderungen jetzt nicht nach 4 Wochen Arbeit, sondern eher nach 2 - 3 Tagen. Das kann aber falsch sein, weil wir nicht alle Details kennen.

Hallo Zusammen,

als erstes möchte ich mich sehr höflich bei euch für eure sehr hilfreichen Beiträge bedanken! Danke!

Ich habe das Angebot in mehrere Bereiche getrennt, für das reine Excel lesen / bearbeiten / ausgeben habe ich einen Preis von 750 Euro verlangt, der Kunde möchte hier eine eigene Anwendung haben. Um das ganze dann auch noch schmackhaft zu machen ein paar Extras mit eingebaut. Konfigurierbar, grafische Oberfläche, einen Chart (x-y-Diagramm) UND mich einen vollen Tag vor Ort zur Schulung ...in der Summe 4 Wochen Lieferzeit, 1600 Euro - Pauschal.

Morgen habe ich einen Termin vor Ort, Geschäftsführung möchte mich kennenlernen, erst dann erfolgt die Freigabe für das Angebot... ist aber noch nichts sicher ...Daumen drücken!

23.03.2015 - 13:08 Uhr

Ich glaube ich bin erschrocken darüber das es doch so teuer geworden ist, ich habe mir die Punkte aufgeschrieben, es sind jetzt sieben an der Zahl. Zeitlich gesehen braucht man dafür auch eine ganze Weile, einfach finde ich das ganze auch nicht.

Ich "schätze" das unter 5000 Euro hier nichts läuft, ich vermute jetzt das es sich so um die 7500 Euro handeln wird. Wobei ich aber nach oben eine Grenze zu 10000 Euro annehmen würde.

Zum glück habe ich hier für beide Seiten nicht sofort einen Tipp abgegeben, dieser läge wohl zwischen 1.500 und 2.500 Euro...

23.03.2015 - 12:50 Uhr

Wie soll das jemand beurteilen können, der nur Schnipsel der Anforderung kennt.

denn wie wir alle wissen steckt der Teufel immer im Detail.

So genau möchte das nun auch nicht wissen, es geht mir ja auch noch nicht um die Umsetzung, nur um die Abschätzung, mehr nicht.

Wir wissen jetzt das die Freelancer Stundenlöhne zwischen 50 Euro und 100 Euro liegen, jetzt fehlt mir ja nur noch eine Zeitangabe... Eine Woche? Vier Wochen? 2 Monate?

23.03.2015 - 12:33 Uhr

bei einem Stundelohn von 25 Euro

Die Freenlance Stundenlöhne von .NET Entwicklern bewegen sich grob irgendwo zwischen 60-80 EU die Stunde.

Wie lange die wohl für solch ein Projekt benötigen würden?

23.03.2015 - 12:20 Uhr

Agile Softwareentwicklung ist hier ein Stichwort, ohne eine Diskussion losbrechen zu wollen.

Das ist mir und dem Kunden auch schon bewusst, nur möchten doch beide Seiten gerne wissen wo die Reise Zeit / Geld hingeht.

Aus dem Bauch heraus würde ich einen Monat anvisieren, als Minimum 4 Wochen: 8 Stunden * 5 Tage * 4 = 160 Stunden ...bei einem Stundelohn von 25 Euro macht das in der Endsumme 4000 Euro für den ersten Teil.

Was wäre euer Preis?

23.03.2015 - 12:02 Uhr

Das Verhältnis zum Kunden ist sehr gut, freundschaftlich. Aber es wäre für den Kunden die erste eigene individuelle Software. Daher würde der Kunde und auch ich es bevorzugen wenn pauschal Stufenweise abgerechnet wird.

  1. Oben genannten Optionen
    1.1 Bearbeitung der Zeilen durch einen Filter
    1.1 Bearbeitung der Zeilen durch einen Faktor
    1.1 Ausgabe in neue Tabellen je nach Zustand

Diese Optionen kann man dann abspeichern, so das man dieses auf mehrere Dateien anwenden könnte.

Irgendwann mal
2. Tabelle + Suchfunktion

Irgendwann mal
3. Trend + Suchfunktion

Leider habe ich hier keine preisliche Vorstellung! Bei einem Ölwechsel an meinem PKW würde ich sagen abhängig vom Öl und Werkstatt liegt hier der Preis um die 150 Euro, 100 Euro für das Öl und 50 Euro für die Stunde Arbeit. Wahrscheinlich liegen wir hier also zwischen 100 und 200 Euro... Aber wo würdet ihr das Excelbearbeitungstool platzieren?

23.03.2015 - 11:26 Uhr

Hallo,

ich arbeite zur Zeit an einem privaten Projekt, hier geht es zuerst einmal darum eine Excel Datei einzulesen und hier eine wählbare Tabelle zu bearbeiten.

In dieser Tabelle sollen die Spalten wählbar sein, auch in der Reihenfolge und eventuell auch neuen Namen für die Spalte. Natürlich würde nur die erste Zeile einen neunen Namen bekommen.

Beispiel:
Preis | Anzahl | Beschreibung | Zustand
1 Euro | 12 Stück | Ü-Ei | Neu
1 Euro | 12 Stück | Apfel | Angebissen
1,50 Euro | 6 Stück | Schokoriegel | Neu
... und so weiter!

Wenn die Zeilen jetzt bearbeitet werden, soll dem Preis ein Faktor zugeordnet werden, gilt für die gesamte Liste.

Bei der Beschreibung soll den Zeilen ein "Filter" zugeordnet werde, also alle Vorkommnisse von Ü-Ei (oder U-Ei, oder Ue-Ei) ändern in Überraschungsei.

Das ganze dann neu Ausgeben in neuen Tabellen in Abhängigkeit vom Zustand:
Eine Tabelle enthält alle neuen Artikel, eine Tabelle enthält alle Artikel mit dem Zustand "Angebissen" ...

Mein bitte an euch: Wie würdet ihr das ganze einem Kunden verrechnen, also an Zeit und Geld!?

19.12.2014 - 13:18 Uhr

Die 5000 Produkte mit 2000 Artieln sind nicht das Problem, wenn ich aber zu einem Artikel jedes Produkt aufgelistet bekommen möchte, dann sind diese 5000 x 2000 da schon eher ein zeitliches Problem.

Oder wie würdet ihr das lösen? Ich hatte zuerst eine Tabelle mit dem Namen ArtikelInProdukt:
Id, ProduktId, ArtikelId
Diese Tabelle hatte dann sehr viele Einträge, also diese 5000 x 2000, irgendwo zwischen 5 Und 10 Millionen. Daher mein Gedankw mit der Partitionierung...

Oder wie würdet ihr die Beziehung zwischen Produkt und Artikel herstellen?

19.12.2014 - 12:47 Uhr

Mit der Antwort hätte ich jetzt nicht gerechnet 😉

Es handelt sich um eine Kundendatenbank mit allen Produkten, Produkte bestehen aus mehreren Artikeln. Ich möchte bei einem Mausklick zu einem Artikel sagen in welchem Produkt diese Verbaut ist.

So ein Produkt besteht aus 500 bis 2000 Artikeln und das bei 5000 Kunden. Und ein Produkt besteht aus mehreren Produkten.

Beispiel Auto (Mercedes Benz C200): Sitz, Lenkrad, ...in der Summe ca. 100 "Einheiten"
Artikel: 5 Meter Stoff, 500 Gramm ABER unterschiedliche Artikelnummern.

Meine Tabellen:
Kunden: ID, Nummer, Name, Adresse
Einheiten: ID, Nummer, Name
Artikel: ID Nummer, Name

Nicht erschrecken, ich habe für jeden Artikel zwei dynamische Tabellen erstellt, in dieser habe ich alle Produkte und in der anderen alle Einheiten. Äh, für die "Einheiten" auch... Da sind ca 5000 Einheiten und 20000 Artikel, also 50000 Tabellen in der Datenbank!

Öffnen kann ich diese noch ohne Probleme, beim programmieren werden die Listen auch sehr schnell abgefragt.

Reichen dir diese Details aus?

19.12.2014 - 12:02 Uhr

verwendetes Datenbanksystem: MS SQL Server 2012 Express

Hallo!

Es handelt sich um 5000 Dateien mit je 1000 Zeilen. Da ich hier sicherlich nicht 5.000.000 Zeilen durchlaufen möchte, bin ich auf die Idee gekommen diese zu partitionieren, klappt so weit auch ganz gut! Allerdings mache ich dieses dynamisch, für jede Datei eine eigene Tabelle.

Was mich jetzt hier gestört hat, neben meinen Tabellen (Produkte, Artikel,...) habe ich jetzt sehr viele dynamisch erzeugte Tabellen, für jedes Produkt und für jeden Artikel.

Daher bin ich beim programmieren auf die Idee gekommen, diese in verschiedene Datenbanken zu packen:
DbListe, hier alle Tabellen wie z.B. Kunden, Produkte, Artikel
DbListeData, hier alle dynamischen Tabellen, wie z.B. A000001 für Artikel mit der ID 1

Macht so eine Trennung überhaupt Sinn? Was mir hier nicht gefallen hat ist, das ich bei einer Trennung keine Fremdschlüssel über Datenbanken hinweg vergeben kann. Das finde ich persönlich sehr schade, denn hier hatte mir LINQ natürlich alles an Arbeit abgenommen.

Meine Frage, macht eine Trennung der Tabellen überhaupt Sinn oder bin ich von LINQ mittlerweile zu sehr verwöhnt worden?

16.01.2014 - 09:32 Uhr

Hast Du Dir überhaupt angeschaut, wie das Hochladen einer Datei funktioniert? Offensichtlich nicht. Ansonsten würdest Du genau wissen, wie man die Daten anschließend "sinnvoll" in die Datenbank überführt.

das war doch schon Anregung genug, jetzt weiß ich wo ich anfangen kann, danke!

16.01.2014 - 09:24 Uhr

hallo,

hochladen ist ja das eine aber was mache ich dann mit der Datei? Diese muss doch verarbeitet werden. Die Daten in der Datei müssen doch "Sinnvoll" in die Datenbank überführt werden und dieses soll doch automatisch geschehen ...hierzu hätte ich gerne Anregungen gehabt!

16.01.2014 - 08:48 Uhr

hallo zusammen,

ich habe vor einiger Zeit ein kleines Tool geschrieben, welches eine oder mehrere Dateien einliest und dessen Inhalt in eine SQL Datenbank schreibt. Die Daten von der SQL Datenbank werden in einer ASP.NET Anwendung dargestellt.

Jetzt möchte ich gerne dieses kleine Tool "sterben" lassen und die Dateien sollen direkt von der ASP.NET Webseite hochgeladen werden können, um dort auf und vom Server bearbeitet zu werden.

Ist so etwas mit ASP.NET überhaupt möglich? Der einzige Lösungsweg der mir so spontan einfällt wäre es die Datei bzw. die Dateien an eine WCF Anwendung zu übergeben... Hier würde ich gerne von euch wissen was ihr von dieser Idee haltet und natürlich auch welchen weg ihr gegangen wärt... Danke 😃

02.08.2013 - 09:51 Uhr

hm, hilft mir jetzt erst mal kein stück weiter aber vielen dank für den tipp das ich mich erst mal in asp.net mvc einarbeiten soll...

01.08.2013 - 19:17 Uhr

hallo,

ich habe eine ListView, in diese übergebe ich aus einer datenbank ein paar einträge. ich möchte wenn ich auf einen eintrag klicke, diesen anzeigen und/oder bearbeiten. als Framework benutze ich twitter bootstrap in der Version 2.3.2 (aktuell ist im Moment die Version 3).

Ich mache es mal kurz: Ich weiß nicht wie ich das machen soll. Gewünscht hätte ich mir das ich über die __doPostBack meine Parameter übergebe und dann das Modale Dialog (welches ja in Bootstrap enthalten ist) anzeige. Daher hier mal der Momentane fortschritt:


 	<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>

	<asp:UpdatePanel ID="UpdatePanel1" runat="server">
		<ContentTemplate>

			<asp:ListView ID="ListView1" runat="server">
				<LayoutTemplate>
					<table class="table table-hover">
						<thead>
							<tr>
								<th>#</th>
								<th>Land</th>
								<th>Menu</th>
							</tr>
						</thead>
						<tbody>
							<asp:PlaceHolder runat="server" ID="itemPlaceholder" />
						</tbody>
					</table>
				</LayoutTemplate>
				<ItemTemplate>
					<%--<tr onclick="__doPostBack('<%#Eval("ID")%>','<%#Eval("ID")%>');">--%>
					<tr>
						<td><b><%#Container.DisplayIndex + 1 %></b></td>
						<td><%# Eval("Land") %></td>
						<td>
							<ul class="nav">
								<li><a href="#Modal" data-target="#Modal" data-toggle="modal" >Hit Me!</a></li>
							</ul>
						</td>
					</tr>
				</ItemTemplate>
			</asp:ListView>

			<div id="Modal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="ModalLabel" aria-hidden="true">
				<div class="modal-header">
					<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
					<h3><i class="icon-edit"></i>Bearbeiten</h3>
				</div>
				<div class="modal-body">
					<dl class="dl-horizontal">
						<dt>
							<asp:Label ID="Label1" runat="server">
								Land:
							</asp:Label>
						</dt>
						<dd>
							<input id="Text1" name="text1" type="text" />
						</dd>
					</dl>
				</div>
				<div class="modal-footer">
					<button class="btn btn-primary">Save</button>
					<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
				</div>
			</div>

		</ContentTemplate>
	</asp:UpdatePanel>


		protected void Page_Load(object sender, EventArgs e)
		{
			JKDBDataContext jkdbDataContext = new JKDBDataContext();

			int länder = jkdbDataContext.Länder.Count();

			var query = (from land in jkdbDataContext.Länder select land);

			ListView1.DataSource = query;
			ListView1.DataBind();
		}

19.06.2013 - 20:25 Uhr

Die einfachsten Fragen zuerst! Ja, sind wirklich ein kleineres Unternehmen im Dorf! Urheberrecht kann beim Programmierer bleiben!

Alles andere fällt mir im Moment schwer zu beantworten, liegt sicherlich (ganz bestimmt) an meiner fehlenden Erfahrung. Ich hätte jetzt gedacht das sich diese Fragen durch das Framework beantwortet wird - diese werden ich mir die Tage mal in aller Ruhe angucken...

Mal ein paar Details von der Textdatei:

Die ersten paar Zeilen sind Info über den Kunden. Name, Land, Stadt, Bemerkung, Produkt. Kleine Falle: Nicht immer in der gleichen Reihenfolge!

Dann folgt eine lange Liste mit der Liste woraus das Produkt besteht. Mechanisch, 4mm Schraube, 2 Stück, Teilenummer im Lager. Für Deutschland ca. 2000 Kunden mit ca. 2 bis 3 Produkten. Für das Ausland nehme ich jetzt mal 50 verschiedene Länder mit je 500 Kunden und 2 Produkten an.

Herausforderung hier: Beim einlesen der Textdatei soll automatisch ein neues Produkt in der Tabelle_Produkte generiert werden, falls es dieses noch nicht in der Tabelle gab. So auch mit den anderen Tabellen.

Wie gesagt: Stabilität und Richtigkeit haben hier oberste Priorität!

Wenn der Code und das Urheberrecht beim Entwickler bleibt dann sind 10.000€ Netto schon realistisch.

Mit Netto meinst du die Lizenz für die Anwendung ohne Hardware?

19.06.2013 - 20:09 Uhr

Wenn du zwei Wochen benötigst, um Textdateien auszulesen, dann sind die 4 Wochen für die Web-Anwendung reines Wunschdenken. Selbst bei einer aufs Wesentliche reduzierter Anwendung brauchst du Erfahrung in HTML, CSS, JavaScript, ASP.NET, Datenbanken, EF, MVC/WebForms usw. Und wenn ich es richtig sehe, hast du bisher kaum Erfahrungen in den Bereichen. Ich würde dir empfehlen, mal bei Channel9 ein paar Einführungs-Videos zu ASP.NET MVC anzuschauen. Dann bekommst du einen Einblick in die Materie, und kannst den Aufwand etwas realistischer einschätzen.

Hm, zwei Wochen sind sicherlich von mir für mich etwas Grob kalkuliert, ich denke mit viel testen schaffe ich das in einer Woche - liegt aber daran das ich das erst vor kurzem gemacht habe, also der Versuch 0.1 - sollte in einer Woche erledigt sein. Denn das Design und das Anlagen der Tabellen in der Datenbank klappt ganz gut. Auch das einlesen durch eine Windows klappt recht gut. Muss aber noch überarbeitet bzw. neu geplant werden ...typische Fallstricke die mir doch begegnet sind 😉

In der Web-Anwendung reicht es erst mal vollkommen aus wenn die Daten nur angezeigt werden. Einfügen, Bearbeiten, Löschen & Co kann ich nachträglich realisieren ...mal schauen was sich dann so ergeben wird, was die Kollegen sich dann so Wünschen 😉

Wirklich wichtig ist das mit den Abteilungen, je nach Abteilung ist eine andere Sicht auf die Daten notwendig. Und je nach Mitarbeiten wird dann entschieden was erlaubt ist. Bei der einen Abteilung reicht die Ansicht der Produkte vollkommen aus, die andere Abteilung bekommt dann zusätzlich noch die Teileliste ...je nach Mitarbeiter dürfen Daten bearbeitet, gelöscht oder eingefügt werden.

Aber wie gesagt, Hauptsache die Textdateien werden sauber importiert und können dann über die Web-Anwendung inklusive Rechteverwaltung in Abhängigkeit der Abteilungen angezeigt werden! Hier kann dann die ganze Energie in die Stabilität und Richtigkeit gelegt werden.

19.06.2013 - 15:58 Uhr

Ja, der erste Teil war ja mal wirklich informativ! Ich hatte auch mal daran gedacht LightSwitch einzusetzen. Vor allen Dingen wegen dem Design! Aber als ich damit mal ein Projekt angelegt hatte und die Datenbank damit verknüpft hatte. Habe ich dann auch festgestellt das dann richtig viel noch angepasst werden muss!

Aber das mit den Frameworks was du mir vorgeschlagen hast, ist ja mal richtig Geil! Ich denke jetzt auch das ich ehr früher als später daran echt gescheitert wäre. Und das mit den verschiedenen Browsern wäre ja dank der Frameworks auch geklärt.


Hm, und nun zum zweiten Teil, gibt mir echt zu denken! Ich hätte auch viel lieber ein halbes Jahr gehabt. Aber das hätte ich unmöglich meinen Chef klar machen können 😄

Daher habe ich mir mal gedacht hier nachzufragen und hätte gerne einen "Vergleich" bzw. einen ungefähren Richtwert.

Mal angenommen das es ein Erfahrener ASP.NET Entwickler macht, wie du geschrieben hast mit dem Baukasten Design in 1-4 Tagen - also in einer Woche. Mit welchen Kosten kann man hier rechnen?

Rechnung:
100 Euro / Stunde: 10085=4000 - Realistisch: Zwischen 5.000 und 10.000 Euro allein an Software ...wäre jetzt mal meine Vermutung .. und deine 😃 ?!


Ich denke wenn ich das Projekt dann endlich mal in Angriff nehme, werden wir uns dann sicherlich wieder hier begegnen ...bis hoffentlich bald!

19.06.2013 - 14:15 Uhr

Ich komme aus der SPS-Welt, vielleicht wäre ja eine Speicherprogrammierbare Steuerung etwas? Allerdings sind diese Dinger nie günstig!

19.06.2013 - 13:58 Uhr

Ok, ich versuche jetzt mal deine genannten Punkte zu beantworten.

HTML 4 oder HTML 5?

HTML5 natürlich.

Muss ein Design entwickelt werden oder soll man ein fertiges kaufen?

puh, erst mal kein Design, es sieht dann erst mal halt so aus wie es aussieht - wäre aber eine richtige gute Idee für die Zukunft. Bis dahin würde ich das so klein halten wie möglich - spielt im Moment keine Große Rolle.

Welche Browser sollen unterstützt werden?

Für den Anfang reicht der aktuelle Internet Explorer. Äh, ich lese gerade in deiner Antwort das der IE9 keinen vernünftigen HTML5 Support bietet. Ist denn nicht gerade der IE10 aktuell. Aber hätte ich keine Probleme damit auf einer anderen Browser auszuweichen, Hauptsache einer der gut funktioniert 😉

Wie groß wird das ganze aufzogen?

Ich denke das ein Webserver ausreicht, sowie je ein Server für die Datenbank und einer für TFS.


Teil 1:
Sorry! Aber ja, wirklich in einer Textdatei, ich kann die Datei bereits auch lesen und Importieren - war aber nur so etwas wie ein kleiner Test.

Teil 2:
Ja, hier kommt wirklich vieles und viel neues auf mich zu! Hier werde ich sicherlich richtig viel neues erlernen 😃

Teil 3:
Rechtemanagement - Ich hatte an ein eigenes Rechtemanagement gedacht, hier im Forum wird sogar eines beschrieben. Hatte zwar ein paar Tage gebraucht um es verstehen und umsetzen zu können, aber funktioniert richtig gut!


Teil3: Mandantensystem: jeder Mandant hat seine eigenen Benutzer und seinen eigenen Content in seiner eigenen Datenbank(-datei).

Ähm? Ich weiß leider nicht was du damit meinst!


Zeitaufwand - Folgendes hätte ich mal für mich geschätzt - wenn nicht schon fast frei erfunden:

  • 2 Wochen um die Daten aus den Textdateien auszulesen und in die Datenbank zu importieren
  • 4 Wochen für die ASP.NET Anwendung, mit dem nötigsten!
  • Eine Woche für die Einrichtung aus der Zielstation

Summe: 8 Woche, also zwei volle Monate

19.06.2013 - 13:15 Uhr

Hallo,

ich möchte mich in naher Zukunft gerne in ASP.NET einarbeiten. Folgendes Projekt habe ich vor Augen: Verwaltung einer Kundendatenbank inklusive der Produkte und deren Teilelisten.

Teil 1:
Die Daten stehen pro Kunde je Produkt in einer Textdatei. Diese Dokumente sollten man im Browser auswählen können, um diese Importieren zu können.

Teil 2:
Das "übliche" ...anzeigen, bearbeiten, löschen, einfügen aller Daten.

Teil 3:
Das ganze "natürlich" mit einer Benutzer- bzw. Rechteverwaltung. Ich möchte Benutzergruppen und Benutzer hinzufügen, und sicherlich auch die Rechte verwalten. Ich möchte gerne bestimmen welche Benutzergruppe was mit welchen Daten machen kann. Unter anderem soll ja nicht jede Benutzergruppe jeden Menüpunkt sehen können, so das auch eine andere Ansicht der Seite sichtbar ist.

Diese Punkte kann ich im Grunde genommen bereits mit einer C# Anwendung, ähm - einem Windows Programm - lösen. Aber selbst hier muss ich zugeben das ich das nicht in Zeit abschätzen könnte.

Also zum einem möchte ich jetzt erst mal abschätzen wie lange man für ein solches Projekt brauchen kann/darf. Und zum einen was denn so ein Projekt kosten würde, wenn ich das bei einem Softwarehersteller bestellen würde.

Software:
MS SQL Server 2012 Express
Visual Studio 2012 Express
Team Foundation Server 2012 Express

Hardware:
1x für den SQL
1x für den TFS

15.01.2013 - 14:14 Uhr

hallo zusammen,

ich möchte gerne Textdatei formartiert einlesen, Aufbau der Textdatei:
Name: Klever Vorname: Klaus Baujahr: 1989

ich habe so etwas schon mal in C gemacht, allerdings noch nicht in C#
fscanf( "Name: %s Vorname: %s Baujahr: %d", &name, &vorname, &baujahr)

Jetzt konnte man im Programm die Parameter weiter verarbeiten. Ist so etwas auch in C# möglich?

Hier mal der richtige Aufbau der Datei:


Bemerkung: A 1234 Kennung: Hans 1
Land: DE Baujahr: 2012
Bemerkung Klaus | Haupt Nr.: 122 | Neben Nr.: 221

Elektrisch +A1-A1 Spanung 1 Stück ab.pdf // parameter durch tabulator getrennt
Mechanisch +A1-A10 Strom 1 Stück bb.pdf // parameter durch tabulator getrennt
...usw

12.03.2012 - 22:00 Uhr

so, habe es jetzt mal mit generics versucht:


class abstract MyBase<T>
 {
      public abstract T _Wert
      {
          get;
          set;
      }

      public abstract T Methode();
 }
 
class MyBase_A : MyBase<int>
 {
      public override int _Wert
      {
            get;
            set;
      }

      public override int Methode()
      {
            // magie...
            return 3;
      }
 }
 
class MyBase_B : MyBase<double>
 {
      public override double _Wert
      {
            get;
            set;
      }

      public override double Methode()
      {
            // magie...
            return 3.14;
      }
 }

hiermit lässt sich jetzt das problem lösen das der rückgabetyp ohne probleme ein anderer sein kann ABER wie bekomme ich das jetzt hin das ich in einer liste alle typen verwalten kann?

sobald ich eine liste anlege:
ObservableCollection<MyBase> _Items; //klappt nicht, typ angabe fehlt!
ObservableCollection<MyBase_A> _ItemsA; // ok, kein problem
ObservableCollection<MyBase_B> _ItemsB; // ok, kein problem

ich hatte das mit den ableitungen gemacht damit ich jedem datentypen auch seine eigene metheoden spendieren kann und außerdem muss ich jedem datentypen spezielle parameter übergeben.

...könnte aber auch sein das ich mal wieder voll daneben liege oder kann ich tatsächlich nicht alle typen in einer liste verwalten und/oder wie könnte ich das umgehen!?

07.03.2012 - 17:41 Uhr

hört sich doch ganz gut an, müsste ich mir aber erst mal in ruhe durchlesen. aber bei der ListBox müsste ich bei dem SelectionChanged event dennoch durch eine is-abfrage entscheiden welches Items geklickt wurde.

es ist eine app für windows phone, also silverlight, dort kann ich nur parameter übergeben. in diesem fall müsste ich also zuerst den typ und dann welches element in der liste... aber erst mal das mit den templates durchlesen 😃

06.03.2012 - 22:43 Uhr

Hmm,

nicht wirklich, da unnötig. Es reichen doch jeweils passende Templates, da brauchst du doch keine neue Windows für.

sorry, aber verstehe nicht was du damit meinst 😦

06.03.2012 - 22:39 Uhr

öhm, das war ja jetzt einfach. dürfte dann aber nicht vergessen bei einer neuen klasse die is-abfragen zu erweitern. wäre es eine gute idee die seiten folgenderweise aufzubauen:

MyDatenType1.cs // klassendeklaration
PageMyDatenType1.xaml // darstellung und bearbeitung
PageMyDatenType1_View.xaml // darstellung
PageMyDatenType1_Edit.xaml // bearbeitung

so könnte man doch nach der abfrage sich den seitenaufruf als string zusammen bauen?

aber im moment sieht es bei mir so aus:
MyDatenType1Model.cs // klassendeklaration
MyDatenType1ModelView.cs // liste (MVVM)
PageType1.xaml // darstellung und bearbeitung

06.03.2012 - 22:34 Uhr

class abstract MyBase
 {
     public abstract _datentype_ _Datum
     {
         get;
         set;
     }
     public abstract int Read();
 }
 
class MyBase_Int
 {
     public override float Read()
     {
     }
 }
 
class MyBase_B
 {
     public override _datentype_ Read()
     {
     }
 }

zum einen weiß ich nicht als was für einen datentyp ich den wert in der klasse anlegen soll und zum anderen weiß ich nicht von welchem typ (int16, float, object?) der rückgabewert von der methode Read sein soll...

datentype ist hier nur als platzhalter für ein großes fragezeichen zu verstehen ist

06.03.2012 - 21:14 Uhr

hallo zusammen,

ich habe eine basisklasse, in dieser klasse möchte ich daten aus einer anderen steuerung auslesen, hierbei handelt es sich um datantypen wie Int / DINt / Real (float)

für jeden datantypen habe ich jetzt eine eigene klass erstellt, weil beim lesen von dem anderen "gerät" verschiedene parameter übergeben werden müssen.


class abstract MyBase
{
	public abstract _datentype_ _Datum
	{
		get;
		set;
	}
	public abstract _datentype_ Read();
}

class MyBase_Int
{
	public override _datentype_ Read()
	{
	}
}

class MyBase_B
{
	public override _datentype_ Read()
	{
	}
}

ich weiß jetzt nicht so recht wie ich an dieser stelle weiter machen soll und auhc nicht sooo recht ab ich da auf dem richtigen weg bin ...würde mich hier alleine schon sehr über anregungen freuen!

06.03.2012 - 21:06 Uhr

hallo zusammen,

ich habe eine ListBox und in dieser zeige ich die namen einer liste an, so weit klappt alles ganz gut. wenn ich jetzt auf ein Item klicke dann wird auch ordnungsgemäß das SelectionChanged Event aufgerufen und ich könnte jetzt ein neues "fenster" aufrufen und einen parameter übergeben ...klappt auch.

nun habe ich in der liste aber "verschiedene" elemente und würde gerne zu jedem datentypen das passende fenster öffnen wollen - komme hier aber im moment nicht weiter!? woher und wie bekomme ich jetzt heraus um welchen Datentypen es sich handelt, also MyBase_A oder MyBase_B? die items in der liste sind natürlich vom datentyp MyBase.


class abstract MyBase
{
	protected String Name;
}

class MyBase_A
{
	private int x;
	private int y;
}

class MyBase_B
{
	private int z;
}

21.01.2012 - 22:06 Uhr

ich glaube es ja nicht, habe mal die adresse geändert
tcp:qwertz.database.windows.net

ich weiß aber leider nicht mehr wann und wo ich das gesehen habe, aber nun kann ich zumindest eine verbindung aufbauen und ein bisschen herumdrücken und testen - verstehe ich nicht!?

21.01.2012 - 21:48 Uhr

hallo zusammen,

ich habe mich mal bei windows azure registriert und wollte dann natürlich auch ein bisschen testen. direkt mal eine datenbank neben der master datenbank erstellt: SqlAzureDb. nun möchte ich gerne auf diese über den SQL Server Management Studio zugreifen. klappt leider nicht 😦

die firewallregel unter der adresse windoes.azure.net habe bereits festgelegt
anfang: 50.60.70.80
ende: 50.60.70.80

und auch das häkchen bei microsoft-dienste aktiviert
anfang: 0.0.0.0
ende: 0.0.0.0

administrator ist "jaipur" mit dem passwort "abcd123XYZ"

die adresse: https://qwertz.database.windows.net

jetzt starte ich meinen SQL Server Management Studio unter der version "SQL Server 2008 R2"

server type: Database Engine
server name: https://qwertz.database.windows.net
authentication: SQL Server Authentication
login: jaipur
password: abcd123XYZ

unter options noch folgendes eingetragen "connect to database: SqlAzureDb" und einen haken bei "encrypt connection" und dann auf Connect gedrückt...

hm, klappt nicht, auch nicht mit der master db. folgende meldung bekomme ich dann zu sehen:


TITLE: Connect to Server
------------------------------

Cannot connect to https://qwertz.database.windows.net.

------------------------------
ADDITIONAL INFORMATION:

Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server. Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (provider: Named Pipes-Provider, error: 40 - Verbindung mit SQL Server konnte nicht geöffnet werden) (Microsoft SQL Server, Error: 53)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=53&LinkId=20476

ganzen tag schon am testen. ich denke wir können davon ausgehen das ich mich nicht vertippt habe. ich habe auch schon den port 1433 freigegeben - aber ich scheine doch noch etwas übersehen zu haben ...die frage ist nur was!?

ich bin über den speedport w503 v mit dem internet verbunden, an diesem ist nur mein notebook verbunden ...muss ich an diesem eine portwiterleitung einrichten?

ich komme im moment einfach nicht weiter, egal wo ich was ändere, es klappt einfach nicht 😦

[edit]: auf dem notebook installiertes betriebssystem: windows 7 professional mit aktivierten updates, sollte also alles aktuell sein.

22.10.2011 - 12:53 Uhr

hallo zusammen,

erst mal die quelle worauf mein projekt aufbaut:
How to: Create a Local Database Application with MVVM for Windows Phone

es handelt sich um ein windows phone mango projekt, in diesem wollte ich jetzt das erste mal die daten mit der sql datenbank verwalten.

in meinem projekt existieren insesamt drei tabellen: projekte, verbindungen, datenpunkte

ein projekt besitzt daher zwei EntitySets, also für die verbindungen und für die datenpunkte.
eine verbindung besitzt ein EntitySet, also für die datenpunkte und eine EntityRef für das projekt.
ein datenpunkt besitzt zwei EntityRefs, also für das projekt und für die verbindung.

hört sich doch schon mal alles ganz gut an und außerdem kann ich auch schon objekte (projekte, verbindungen, datenpunkte) einfügen, bearbeiten, löschen - klappt alles so weit wie "geplant"

ABER: jetzt ist mir aufgefallen das beim löschen eines datenpunktes die dazugehörige verbindung ebenfalls gelöscht wird?! wie kann das? muss das so? habe ich da etwas überlesen oder einfach nur vertippt - komme an dieser stelle nicht weiter!

was mir dann aber doch noch aufgefallen ist: wenn ich das programm neu starte ist dann der datenpunkt wie gewollt nicht mehr da. und die verbindung ist wieder da, welche ja hätte nicht weg sein sollen.

bin natürlich gerne dazu bereit quellen aus dem programm zu posten und wenn es sein muss auch das projekt per e-mail zu senden. gucke das programm seit zwei tagen durch aber komme einfach nicht auf die lösung/problem!

25.03.2011 - 22:22 Uhr

hallo zusammen,

ich arbeite mich gerade in die thematik mit mvvm ein, mit folgendes beispiel:
ItemViewModel.cs // Datenobjekte
MainViewModel.cs // View-Objekt

jetzt wollte ich das ganze um ein weiteres ItemViewModel erweitern:
Item_1_ViewModel.cs // Datenobjekte vom typ auto
Item_2_ViewModel.cs // Datenobjekte vom typ mensch
MainViewModel.cs // View-Objekt

was ich jetzt aber nicht weiß - weil noch nicht verstanden - sollte ich jetzt ein BaseViewModel erstellen und die Item_1 / Item_2 sollten von diesem erben oder wie stellt man dies richtig an?

24.03.2011 - 11:46 Uhr

voher


<TextBox Text="{Binding LineOne}" />

nachher


<StackPanel DataContext="{Binding Items[0]}">
	<TextBox Text="{Binding LineOne}" />
	<TextBox Text="{Binding LineTwo}" />
</StackPanel>

und... das war es schon.

24.03.2011 - 10:27 Uhr

hallo zusammen,

ich versuche gerade ein windows phone zu programmieren, mit dem panorama template. in deisem projektordner sind zwei ordner, in dem einen ordner befinden sich die beispieldaten und in dem anderen ordner die views - also die axml seiten.

die mainpage zeigt schön brav die designdaten an, aber ich schaffe es nicht diese daten in einer anderen view in einer textbox anzuzeigen. mein problem liegt zum einen an der quellangabe der daten und zum anderen weiß ich nicht wie ich sagen das er auf die items zugreifen soll.

hier die quellangabe der designdaten der view in dem ordner views, ich kopiere diese mal aus der mainpage.axml


d:DataContext="{d:DesignData SampleData/MainViewModelSampleData.xaml}"

da die view und die beispieldaten in einem ordner liegen vermute ich das die angabe "SampleData/MainViewModelSampleData.xaml" nicht richtig ist...

hier die angabe des ziels, also der textbox in der view in dem ordner views


<TextBox Text="{Binding LineOne}" />

und zu guter letzt die angabe aus der funktionierem mainpage.xaml


xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
d:DataContext="{d:DesignData SampleData/MainViewModelSampleData.xaml}"

<ListBox ItemsSource="{Binding Items}">
	<ListBox.ItemTemplate>
		<DataTemplate>
			<StackPanel>
				<TextBlock Text="{Binding LineOne}" />
				<TextBlock Text="{Binding LineTwo}" />
			</StackPanel>
		</DataTemplate>
	</ListBox.ItemTemplate>
</ListBox>

19.03.2011 - 21:46 Uhr

@pdelvo: genau so scheint es zu gehen, hat prima geklappt!

und was ich schon auch schon immer mal wissen wollte: kann man hier eigentlichen einen thread als "erledigt" markieren?

18.03.2011 - 22:38 Uhr

hast du dazu vielleicht auch noch einen link oder ein beispiel?

ich habe "nur" as hier gefunden, allerdings ein beispiel mit multibinding, ich denke das dürfte auch nur für einen wert möglich sein?

http://stackoverflow.com/questions/1978316/binding-r-g-b-properties-of-color-in-wpf

18.03.2011 - 21:58 Uhr

Color ist kein DependencyProperty, daher kannst du so nicht dagegen binden.

ähm, also zumindest einen kleinen tipp könntest du mir schon zustecken wie ich es denn eventuell lösen könnte / sollte?

18.03.2011 - 21:28 Uhr

hallo zusammen,

es handelt es sich um ein programm für ein windows phone app. hier speichere ich ein paar einträge in den settings damit ich über ein schlüssel auf die werte zugreifen kann.

hier kam auch schon das erste hindernis, ich konnte die einstellung der rectangel fill nicht speichern, weil dieser vom typ SolidColorBrush sein muss und dieser typ wird anscheinend nicht unterstützt. dafür allerdings ein datum vom typ Color. daher habe ich folgendes versucht - allerdings bekomme ich hierbei immer einen XamlParseException: AG_E_PARSER_BAD_PROPERTY_VALUE [Line: 4 Position: 28]


	<Rectangle>
		<Rectangle.Fill>
			<SolidColorBrush Color="{Binding Path=Farbe}" />
		</Rectangle.Fill>
	</Rectangle>

was möchte mir mein high-end-wekzeig damit sagen? oder kann mich einer von euch auf einen anderen weg bringen?

18.02.2011 - 11:34 Uhr

hm, und wie komme ich jetzt aus diesem dilemma wieder heraus? ich meine wie / wo kann ich das einstellen das ich auch von extern meinen tfs erreichen kann?

11.02.2011 - 09:33 Uhr

na, das war ja mal wieder echt seltsam! nach deiner vermutung ist mir mal aufgefallen das der "einzige" unterschied zwischen dem virtuellen und realen rechner darin bestand das der reale rechner die "alte" klassische windows oberfläche hatte.

dann habe ich bei dem realen rechner die oberfläche umgestellt auf die bunte xp oberfläche und dann mein programm gestartet ...funktioniert! oberfläche wieder umgestellt auf die klassische oberfläche ...programm wieder gestartet: funktioniert!

auch wenn das programm läuft und ich dann die oberfläche umstelle scheint das programm nicht mehr zu stören ...seltsam?!?

10.02.2011 - 10:49 Uhr

vielen dank für den tipp mit strg+c von der messagebox, daher hier jetzt mal das ganze als text:


Provide value on 'System.Windows.Markup.StaticExtension' threw an exception.

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ComponentModel.Win32Exception: HRESULT_FROM_WIN32(ERROR_NOT_FOUND)
   at Standard.HRESULT.ThrowIfFailed(String message)
   at Standard.NativeMethods.GetCurrentThemeName(String& themeFileName, String& color, String& size)
   at Microsoft.Windows.Shell.SystemParameters2._InitializeThemeInfo()
   at Microsoft.Windows.Shell.SystemParameters2..ctor()
   at Microsoft.Windows.Shell.SystemParameters2.get_Current()
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeType typeOwner)
   at System.RuntimeMethodHandle.InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeType typeOwner)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Reflection.RuntimePropertyInfo.GetValue(Object obj, BindingFlags invokeAttr, Binder binder, Object[] index, CultureInfo culture)
   at System.Reflection.RuntimePropertyInfo.GetValue(Object obj, Object[] index)
   at System.Windows.Markup.StaticExtension.GetFieldOrPropertyValue(Type type, String name, Object& value)
   at System.Windows.Markup.StaticExtension.ProvideValue(IServiceProvider serviceProvider)
   at MS.Internal.Xaml.Runtime.ClrObjectRuntime.CallProvideValue(MarkupExtension me, IServiceProvider serviceProvider)

System.Collections.ListDictionaryInternal

   at System.Windows.Markup.XamlReader.RewrapException(Exception e, IXamlLineInfo lineInfo, Uri baseUri)
   at System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
   at System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)
   at System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)
   at System.Windows.Application.LoadBamlStreamWithSyncInfo(Stream stream, ParserContext pc)
   at System.Windows.Application.LoadComponent(Uri resourceLocator, Boolean bSkipJournaledProperties)
   at System.Windows.Application.DoStartup()
   at System.Windows.Application.<.ctor>b__1(Object unused)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)

und nun zu deiner vermutung mit dem Theme. ich hatte auf dem virtuellen rechner und dem echten rechner zuerst das .net framework 4.0 full installiert - per hand ...damit ich mich nicht solchen meldungen herumschlagen muss g

und nü?

10.02.2011 - 10:33 Uhr

EDIT: so, jetzt die daten mit

  • Exception.Message
  • Exception.InnerException
  • Exception.Data
  • Exception.StackStrace
10.02.2011 - 10:30 Uhr

hallo,

vielen dank für die schnelle antwort, anbei ein screenshot der fehlermeldung von der echten windows xp kiste. eine einfache messagebox mit der Exception.Message und der Exception.InnerException...

10.02.2011 - 10:01 Uhr

hallo zusammen,

ich habe eine wpf ribbon anwendung geschrieben mit vstdo2010 untzer windows 7, funktioniert. dieses progrmm habe dann unter einer virtuellen maschine geteset unter windows xp, funktioniert. dann wollte ich das programm unter einer echten maschine ausführen - unter windows xp: funktioniert nicht.

durch eine unhandled exception in der app.xml / app.xml.cs konnte ich dann heraus finden: Provide value on 'System.Windows.Markup.Exception' threw an exception

allerdings kann ich hiermit nicht anfangen 😦