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 Sarc
Thema: Code zur Laufzeit compilieren und ausführen...
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

der Fehler wird ja schon deutlich beschrieben:

Fehler
[error CS0119: 'FlexConverter.Convert(object)' ist 'Methode' und im angegebenen Kontext nicht gültig.
Sprich: Da es sonst eine Namens-Überschneidung deiner Methode mit der Convert-Klasse gibt, musst du die Convert-Klasse explizit angeben, d.h. System.Convert.ToInt32.
Zitat von vbprogger
IMHO musst du casten, da Convert.ToInt32 einen Wert vom Typ int liefert und kann nicht einer Variable vom Typ object zugewiesen werden.
Da muss kein cast stattfinden, andersherum (von object auf int) wäre es jedoch nötig.

Thema: MoonPdf - PDF Viewer Control und PDF Viewer
Am im Forum: Projekte

Hallo,

zu 1.: Nein, ist momentan nicht vorgesehen. Am Projekt wird (meinerseits) nicht mehr wirklich aktiv weiterentwickelt.
zu 2.: Die Komponente rendered lediglich einzelne PDF-Seiten als Bilder, daher wird hier keine Erkennung von (Hyper-)links unterstützt.

Gruß

Thema: Welche Alternative zu FtpWebRequest auf .NetCore (auf Raspberry Pi)?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat von fabianClick
HttpClient / DownloadFileAsync gibt es jedoch ebenfalls nicht in NetCore
Hierzu kannst du System.Net.WebRequest verwenden, z.B.:

var fileRequest = WebRequest.Create("http://www.example.com/somefile.txt");

Thema: JSON Datums-Format (nur Ziffern) in C# konvertieren?
Am im Forum: Rund um die Programmierung

Ja, sehe ich auch so wie Coffeebean.
Lässt sich leicht berechnen:

var dt = new DateTime(1970, 1, 1).AddSeconds(1455829972);

Thema: LINQ und der Debugger / Set Next Statement...
Am im Forum: Datentechnologien

Zitat von LaTino
...bei dir funktioniert, so ganz ohne set-accessor. oO
Das ist ein C# 6 Feature (https://msdn.microsoft.com/en-us/magazine/dn802602.aspx)
Folgendes wäre ebenso möglich:

public IList<string> List { get; } = new List<string>  {"Test", "Test2" };

Thema: Fragen zur korrekten objektorientierten Programmierung
Am im Forum: Code-Reviews

Zitat von Abt
Zitat von LaTino
(ist man so paranoid wie ich, würde man's über SHGetFileInfo aus der registry lesen)
Was mit DNX nicht mehr funktionieren wird :-)
Als kleine Korrektur: Es wird nur unter der .NET Core Runtime nicht mehr funktionieren. Solange man das "normale .NET" nutzt geht das auch weiterhin mit dnx (bzw. aktuell net451).

Thema: Interactive Window in VS 2015
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo,

ich weiss zwar nicht, ob das das Standardvorgehen ist, aber über die Script Directive kannst du deine .dll einbinden und dann verwenden.

#r "../Path/to/your/dll.dll"
Klappt bei mir einwandfrei.

Thema: Auslesen und Ausgeben bestimmter ID/Abschnitte in html
Am im Forum: Web-Technologien

Hi,

das Auslesen passt schon, allerdings überschreibst du ja den label.Content immer wieder, wodurch das Label natürlich immer den Text des letzten Elements enthält.

Mach einfach hitfinderTable.Rows.First() und lies dir nur hierzu die jeweiligen Tabellenzellen aus.

Thema: Auslesen und Ausgeben bestimmter ID/Abschnitte in html
Am im Forum: Web-Technologien

Am einfachsten ist, wenn du über den NuGet Package manager nach AngleSharp suchst und es hierüber einbindest.
Beispiele zur Anwendung findest du unter: https://github.com/AngleSharp/AngleSharp/wiki/Examples

Thema: Auslesen und Ausgeben bestimmter ID/Abschnitte in html
Am im Forum: Web-Technologien

Hi,

ich würde das nicht mit Regex lösen, sondern mit einer speziellen HTML-Parser library, z.B. AngleSharp (https://github.com/AngleSharp/AngleSharp)
Hier kannst du dann auch Query selektoren angeben, um einfach an HTML-Elemente zu gelangen, z.B. bei dir zu einem span mit der id headerTracklistCurrentSongArtist.

Thema: Azure: NHibernate legt Tabellen nicht an
Am im Forum: Datentechnologien

Hallo,

wieso weisst du nicht was in der web.config steht? Die wird doch von dir erzeugt und hochgeladen...
Funktioniert der Zugriff auf SQL Azure denn wenn du die Anwendung lokal startest? Dann wüsstest du schonmal ob der connectionstring passt.

Thema: Best practice - Persistierung in einer Web-Applikation
Am im Forum: Grundlagen von C#

In solchen "kleinen" Projekten zeigt sich halt der Mehrwert mancher "Best practices" nicht bzw. nicht sofort.
Du könntest z.B. auch in einem kleinen Projekt einen Caching-Layer einbauen, das Repository- und Unit of Work-Pattern in der Datenzugriffsschicht und Dependency Injection für eine bessere Trennung verwenden etc.
Aber wie du ja sagst, ist die Komplexität des Programms sehr gering, wodurch wohl eher ein overhead, als ein echter Nutzen dieser Maßnahmen entstehen würde.

Es ist natürlich an sich sinnvoll sich mit den Entwurfsmustern und z.B. der Funktionsweise von OR-Mappern zu beschäftigen (mit deren Vor- und Nachteilen). Ein kleines Projekt bietet hierzu gute Möglichkeiten, aber ob ein OR-Mapper nun die optimale Datenzugriffsmöglichkeit darstellt kann man nicht sagen. Was heisst "optimal"? Jeder der Ansätze hat Vor- und Nachteile die man abwägen muss.

PS: Falls du es machst um zu lernen, würde ich Webforms in die Tonne packen und stattdessen MVC oder Wep-API Projekte verwenden. Das ist meiner Meinung nach zukunftsträchtiger.

Thema: Best practice - Persistierung in einer Web-Applikation
Am im Forum: Grundlagen von C#

Hallo,

also den optimalen Weg genau für deine Anwendung wirst du hier sicher nicht erfahren.
Da sind einfach zu viele Unbekannte.
Die Frage ist doch, wieso möchtest du deine Anwendung umstrukturieren?
Einfach so (wg. "Best practices") oder hast du konkrete Probleme (Performance o.ä.)?

Als Beispiel: Du kannst natürlich das Entity Framework verwenden, aber wenn du es machst um die Performance zu verbessern, dann wäre es das falsche Vorgehen, da du mit deinen nativen sql-statements schneller bist. Zumal ja auch die Komplexität des Programms nicht so hoch ist, dass ein OR-Mapper zur einfacheren Handhabung notwendig erscheint.

PS: Aber schonmal gut, dass du dich von Access verabschiedest ;)

Thema: Architektur: Disconnected Services mit Message-Queue
Am im Forum: Rund um die Programmierung

Hallo,

pauschal lässt sich das nicht sagen, obwohl ich zu Variante 1 tendiere.
Ein Faktor könnte z.B. die maximale Größe einer Nachricht der Messagequeue sein. Falls deine Payload größer als ein paar KB sein sollte, gibt es möglicherweise Einschränkungen seitens Azure Service Bus.
Variante 2 könnte problematisch sein falls du replizierte und nicht (bzw. letztendlich) konsistente Datenspeicher verwendest. Wenn beim Einfügen deiner Nachricht in die Queue beispielsweise noch nicht alle Replikate aktualisiert wurden und sich deine Queue die Daten aus einem nicht aktualisierten Replikat holt, dann wäre das ein Problem.
Zudem vermeidet Variante 1 eine Abhängigkeit zum Ticket-Service.

Thema: Gzip wird in IIS-Express für .js-Dateien nicht verwendet
Am im Forum: Web-Technologien

Den Stackoverflow-Beitrag habe ich auch schon gefunden und habe es auch damit schon versucht.
Leider hat das auch nicht geholfen.

Edit:
Es scheint wohl doch an einer Besonderheit von Asp.net 5 zu liegen. Ich habe nochmal zwei neue Web-Projekte angelegt, jeweils für das "alte" Asp.net und Asp.net 5.
Bei vorigem funktioniert gzip für .js problemlos. In Asp.net 5 leider nicht.

Edit 2:
Problem gelöst. In Asp.net 5 werden bei Verwendung von static files die Dateierweiterungen separat verwaltet: https://github.com/aspnet/StaticFiles/blob/dev/src/Microsoft.AspNet.StaticFiles/FileExtensionContentTypeProvider.cs
Die Lösung ist, in der Startup-Klasse anstelle von app.UseStaticFiles() folgendes zu verwenden:

var option = new StaticFileOptions();
var contentTypeProvider = (FileExtensionContentTypeProvider)option.ContentTypeProvider;
contentTypeProvider.Mappings.Remove(".js");
contentTypeProvider.Mappings.Add(".js", "text/javascript");
app.UseStaticFiles(option);

Thema: Gzip wird in IIS-Express für .js-Dateien nicht verwendet
Am im Forum: Web-Technologien

Hallo Abt,

die statische Kompressionskomponente ist installiert. Im normalen IIS funktioniert ja auch alles wunderbar, nur nicht im IIS-Express.
Ich habe in der Config auch bereits text/javascript versucht, jedoch ohne Erfolg.

Thema: Gzip wird in IIS-Express für .js-Dateien nicht verwendet
Am im Forum: Web-Technologien

Hallo,

ich habe ein Problem mit dem IIS-Express (Version 10.0) und gzip. Es handelt sich um eine Asp.Net 5-Anwendung, falls das eine Rolle spielen sollte.
Leider werden keine .js-Dateien vom IIS-Express mit gzip komprimiert. Für statische .html-Dateien funktioniert das einwandfrei.
Ebenfalls funktioniert gzip für .js-Dateien im normalen IIS (nicht Express) in der Version 8.5.
Ich habe schon viele Änderungen der Config versucht. Hier ist der Abschnitt zur Compression:

<httpCompression directory="%TEMP%\iisexpress\IIS Temporary Compressed Files">
	<scheme name="gzip" dll="%IIS_BIN%\gzip.dll" />
	<dynamicTypes>
		<add mimeType="text/*" enabled="true" />
		<add mimeType="message/*" enabled="true" />
		<add mimeType="application/x-javascript" enabled="true" />
		<add mimeType="application/javascript" enabled="true" />
		<add mimeType="*/*" enabled="false" /> 
	</dynamicTypes> 
	<staticTypes> 
		<add mimeType="text/*" enabled="true" /> 
		<add mimeType="message/*" enabled="true" /> 
		<add mimeType="application/x-javascript" enabled="true" /> 
		<add mimeType="application/javascript" enabled="true" /> 
		<add mimeType="application/atom+xml" enabled="true" /> 
		<add mimeType="application/xaml+xml" enabled="true" /> 
		<add mimeType="*/*" enabled="false" /> 
   </staticTypes> 
</httpCompression>
Hat jemand eine Idee an was es liegen könnte, dass .js-Dateien nicht gzip't werden oder kann das "Problem" reproduzieren?

Thema: [Gelöst] jQuery - Entfernen eines Divs mit allem Inhalt
Am im Forum: Web-Technologien

Hmm, ich kann dein Problem nicht reproduzieren. Wenn ich folgendes ausführe, wird der komplette div aus dem DOM entfernt:

<html>
<body>
<div class="parent">
          <input class="ui-btn delete" type="button" value="Löschen">
          <div>
             <input id="Facher_0__ID" type="hidden" value="1" name="Facher[0].ID">

             <div class="ui-input-text ">
                  <label >Nummer:</label>
                   <input id="Facher_0__Name" type="text" value="1" name="Facher[0].Name">
            </div>

           </div>
</div>
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(".delete").click(function(){
	$(this).parent().remove();
});
});
</script>
</body>
</html>

Thema: [Gelöst] jQuery - Entfernen eines Divs mit allem Inhalt
Am im Forum: Web-Technologien

Hallo,

$(this).parent('div').remove(); sollte den entsprechenden div aus dem DOM entfernen. Was funktioniert denn nicht?

Thema: Windows Phone POST an MVC Webservice
Am im Forum: Web-Technologien

Das geht mittels [FromBody]-Attribut und hat mit dem Routing nichts zu tun.

public IActionResult ControllerMethod([FromBody]DeinModel model)
{ ... }

Thema: Windows Phone POST an MVC Webservice
Am im Forum: Web-Technologien

Hi,

das wird so aufgrund des [ValidateAntiForgeryToken]-Attributs nicht funktionieren.
Damit soll ja gerade sichergestellt werden, dass keine Cross-Site requests (in diesem Fall von deiner Windows App heraus) gemacht werden.

Thema: [gelöst] Methodenverhalten für komplettes Set von Subklassen ändern
Am im Forum: Rund um die Programmierung

Ich verstehe nicht, was an meiner genannte Variante mit Dynamic Proxy so "unelegant" ist.
Es ist weniger Aufwand als mit Regex und zudem wiederverwendbar.
Die Anforderungen (d.h. kein Zugriff auf die Implementierung noch auf die Factory) geben nicht viel weitere Möglichkeiten her als einen Wrapper zu nutzen.

Thema: [gelöst] Methodenverhalten für komplettes Set von Subklassen ändern
Am im Forum: Rund um die Programmierung

Hallo,

bei dieser Ausgangssituation wirst du wohl über einen dynamischen Proxy nicht herumkommen.
Eine mögliche Library hierfür wäre https://github.com/Curit/DynamicProxy

Basierend darauf zeigt das folgende Beispiel wie du einen Proxy erstellst, die entsprechende Methode abfängst und mit deiner Implementierung ersetzt. Zunächst die Dinge die du kennst, nämlich die Schnittstelle und die Implementierung (auch wenn diese für dich unveränderbar sind):

public interface ITest
{
	string NotInterceptedMethod();
	int DoStuff(int a, int b);
}

public class Test : ITest
{
	public string NotInterceptedMethod()
	{
		return "Hello World";
	}

	public int DoStuff(int a, int b)
	{
		return a + b;
	}
}
Die Standardimplementierung von DoStuff liefert die Addition zweier Zahlen zurück. Wir wollen jedoch eine Multiplikation daraus machen:

public static class Program
{
	static void Main(string[] args)
	{
		ITest test = new Test(); // Objekt für das der Proxy erstellt werden soll
		ITest proxiedTest = ProxyFactory<ITest>.Proxy<ITest>(test);
		var proxy = proxiedTest as IProxy<ITest>;
		proxy.AddInterceptor<int, int, int>((obj,a,b) => obj.DoStuff(a, b), (func, a, b) =>
		{
			// wir fangen den Aufruf von DoStuff ab und ersetzen die Standardimplementierung durch eine Multiplikation
			return a * b;
		});

		var res = proxiedTest.DoStuff(4, 7); // liefert 28 und nicht 11

		Console.WriteLine(res);
		Console.WriteLine(proxiedTest.NotInterceptedMethod()); // zeigt, dass die nicht abgefangene Methode, das Ergebnis aus dem Originalobjekt liefert
		Console.ReadLine();
	}
}

Thema: EventArgs spricht nicht an Visual Studio bringt eine Fehlermeldung
Am im Forum: Grundlagen von C#

Zitat von hummigbird1
Durch das (versehentliche) weglassen von "public" definierst du die Klasse als private und kannst sie damit nicht als event argument einer anderen public Klasse verwenden.
Als Korrektur/Ergänzung dazu: Die fehlende Angabe der Klassensichtbarkeit führt dazu, dass die Klasse internal und nicht private ist.
Elementdefinitionen ohne Sichtbarkeitsmodifikator innerhalb einer Klasse/Struct sind jedoch private.

Thema: Zusammenhängende 0 Einträge in String ersetzen mit Counter
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

also mittels regulärem Ausdruck ist das ein Einzeiler:

var res = Regex.Replace("0B0000CF", "0+", m => m.Value.Length.ToString());

Wenn du es ohne Regex lösen willst/musst, kannst du Zeichenweise durch den String iterieren und musst dir dann eben nen status merken (counter hochzählen falls das aktuelle Zeichen 0 ist bis keine 0 mehr kommt) und das ganze dann einem neuen String hinzufügen.
Nur mittels der normalen String.Replace-Methode lässt sich das Problem nicht lösen.

Thema: Binärübertragung C# Server mit Java Client
Am im Forum: Netzwerktechnologien

Hallo,

durch die Konvertierung nach base64 steigt die Datengröße etwa um 1/3 an, was nicht Effizienz-förderlich ist.

Thema: dyn. LINQ (dynamische Spaltennamen in der WHERE-Klausel)
Am im Forum: Datentechnologien

Hi,

da du vor deinem "Take(Limit)" schon ToList() aufrufst, liest du bereits alle Zeilen aus der DB und filterst dann erst im Speicher, was sicher nicht dein Ziel ist.

Thema: Datenübertragung zu PHP-Seite
Am im Forum: Grundlagen von C#

Zitat
Damit habe ich mir die 1Zeile in flines gespeichert und zuvor ausgegeben. Das Passt alles :-)
Das was du da machst passt eben nicht. Du rufst zweimal reader.ReadLine() auf, d.h. du liest hier die ersten beiden Zeilen. Die erste speicherst du nicht, sondern gibst es nur in der MessageBox aus.

Thema: Datenübertragung zu PHP-Seite
Am im Forum: Grundlagen von C#

Hallo,

du liest ja mit while (reader.ReadLine() != null) die erste Zeile, aber speicherst Sie nicht. Daher taucht sie bei dir nicht auf.

Thema: Suche PDF Library zum Thumbnails erstellen
Am im Forum: Rund um die Programmierung

Hallo,

ich habe einen PDF-Viewer erstellt, der die Voraussetzungen erfüllt: http://www.codeproject.com/Articles/579878/MoonPdfPanel-A-WPF-based-PDF-Viewer-Control

Er basiert auf MuPdf (http://mupdf.com/) und kann unter der GPL 3 verwendet werden.
Für eine kommerzielle Nutzung der "libmupdf.dll" (DLL von MuPdf) müsstest Du bei MuPdf nachfragen, was das kosten würde.