Laden...
M
Mekallica myCSharp.de - Member
Angehender Informatiker Essen Dabei seit 13.09.2014 8 Beiträge
Benutzerbeschreibung

Forenbeiträge von Mekallica Ingesamt 8 Beiträge

01.07.2015 - 12:58 Uhr

Hallo zusammen,

vielen Dank erstmal für die Infos. Da ich keine große Erfahrung in asp.net habe (und dies mein erstes Projekt ist 😃) , würde ich erstmal die Stichpunkte, die ihr mir genannt habt nachgehen und dann evtl. auf euch mit weiteren Fragen zukommen.

Viele Grüße
Mekallica

30.06.2015 - 19:53 Uhr

Hallo Forum,

ich versuche auf Basis dieses OrgCharts https://developers.google.com/chart/interactive/docs/gallery/orgchart

eine ASP.NET MVC 5-Anwendung zu programmieren. Mein Problem liegt daran, dass ich den Inhalt des DataTables (also in data.addRows([***]) ) nicht mit razor füttern kann.

Die Daten stammen aus einer MongoDb. Im HomeController schicke ich die Daten in die View mittels


 public ActionResult Index()
{
	IList<Person> personen = db.GetAll();
	return View(personen);
}

Meine View sieht so aus


@model IEnumerable<MyProject.Models.Person>

@{
    ViewBag.Title = "Test";
}
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
    google.load("visualization", "1", { packages: ["orgchart"] });
    google.setOnLoadCallback(drawChart);
    function drawChart() {
        var data = new google.visualization.DataTable();
        data.addColumn('string', 'Name');
        data.addColumn('string', 'Manager');
        data.addColumn('string', 'ToolTip');

        var data2 = [];
        @foreach (var item in Model)
        {
            @:data2.push("[{v:'"+"@item.Id"+ "', f:'" + "@item.Name"+ "'}, " + "'" + "@item.Parent" + "', '" + "@item.Titel" + "']");
        }
        console.log(data2);
        data.addRows(data2);
        var chart = new google.visualization.OrgChart(document.getElementById('chart_div'));
        chart.draw(data, { allowHtml: true });
    }
</script>
<div id="chart_div"></div>

Wenn ich mittels Console.log(data2) die Ausgabe des Arrays ín Data.addRows eingebe, dann klappt das.


data.addRows([  <--
            [{ v: 'd8b9b06b-0dfd-2949-a4f0-122143dfb65d', f: 'Eins' }, '', 'Titel1'],
            [{ v: '8cbe910c-ca9c-8846-afc7-e7a3cbf35431', f: 'Zwei' }, 'd8b9b06b-0dfd-2949-a4f0-122143dfb65d', 'Titel2'],
            [{ v: 'ebd05ee2-1ceb-5945-85c4-da6814ec4c0c', f: 'Drei' }, 'd8b9b06b-0dfd-2949-a4f0-122143dfb65d', 'Titel3'],
            [{ v: '74fd4f1a-7b34-d244-9b3b-b3733dc1c721', f: 'Vier' }, '8cbe910c-ca9c-8846-afc7-e7a3cbf35431', 'Titel4'],
            [{ v: 'c2f5a1df-5dc9-e14f-93d3-38573b562482', f: 'Fünf' }, 'ebd05ee2-1ceb-5945-85c4-da6814ec4c0c', 'Titel5'],
            [{ v: 'd4bf4366-f2b8-044d-a733-711f56a101d2', f: 'Sechs' }, 'ebd05ee2-1ceb-5945-85c4-da6814ec4c0c', 'Titel6'],
            [{ v: 'e0729578-5709-194c-b2da-423c57971e68', f: 'Sieben' }, '74fd4f1a-7b34-d244-9b3b-b3733dc1c721', 'Titel7'],
            [{ v: '80dda164-3ced-1e47-9127-53bfe4e07f9e', f: 'Acht' }, 'c2f5a1df-5dc9-e14f-93d3-38573b562482', 'Titel8'],
            [{ v: '988bb6ce-cd24-7f4f-9122-095b7aff4cb8', f: 'Neun' }, '74fd4f1a-7b34-d244-9b3b-b3733dc1c721', 'Titel9']
]  <--
);

Hat das vielleicht mit den ersten eckigen Klammern von

data.addRows 

zu tun? und wie kriege ich sie in data2 rein?

Bin für euere Hilfe sehr dankbar
Mekallica

30.06.2015 - 14:57 Uhr

Ich fand beide Filme super geil 😃

20.05.2015 - 13:22 Uhr

Hallo,

in einer WPF-Anwendung zeige ich ein mittels XSLT erstelltes HTML-Dokument in ein System.Windows.Controls.WebBrowser an. Das funktioniert hervorragend. Nun möchte ich den Content dieses WebBrowsers ausdrucken.

Zum Ausdrucken verwende ich ein Windows.Forms.WebBrowser, da dieser mir direkt eine Print-Funktion anbietet (funktioniert auch super). Auf dem Papier sehe ich aber den header und footer, die normalerweise vom IE erzeugt werden. Nun möchte ich diese ändern.

Mit dem Code unten versuche ich den Inhalt des headers und footers kurz zu überschreiben und nach dem Drucken zu reseten. Das funktioniert leider nicht! Erst nachdem die Registry geschlossen wurde, schickt die Anwendung den Content des WebBrowsers an den Drucker und leider mit header und footer. Mit ManualResetEvent versuchte ich auch vergeblich. Hier bleibt er allerdings hängen.

Habt ihr eine Lösung für mich?

Viele Grüße


//ManualResetEvent mre = new ManualResetEvent(false);

string oldFooter = String.Empty, oldHeader = String.Empty;

private void Button_Click(object sender, RoutedEventArgs e)
        {
            //mre.Reset();
            System.Windows.Forms.WebBrowser webbrowser = new WebBrowser();
            webbrowser.Url = new Uri(htmlFile);
            using (RegistryKey key = Registry.CurrentUser.OpenSubKey(keyName, true))
            {
                if (key != null)
                {
                    oldFooter = (string)key.GetValue("footer");
                    oldHeader = (string)key.GetValue("header");
                    key.SetValue("footer", String.Empty);
                    key.SetValue("header", String.Empty);
                    webbrowser.DocumentCompleted += webbrowser_DocumentCompleted;
                    //mre.WaitOne();
                    key.SetValue("footer", oldFooter);
                    key.SetValue("header", oldHeader);
                }
            }
        }
 
        void webbrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            System.Windows.Forms.WebBrowser printDoc = sender as WebBrowser;
            printDoc.Print();
            printDoc.Dispose();
            //mre.Set();
        }
18.05.2015 - 16:30 Uhr

Hallo,

versuch mal mit

ProcessStartInfo startInfo = new ProcessStartInfo
            {
                FileName = filename,
                Verb = "PrintTo",
                Arguments = "\"" + "Brother DCP-J315W Printer" + "\"",
                CreateNoWindow = true,
                WindowStyle = ProcessWindowStyle.Hidden
            };


            Process p = new Process();
            p.StartInfo = startInfo;
            p.Start();

            if (p != null && p.HasExited == false)
                p.Kill();

Viele Grüße

09.10.2014 - 16:01 Uhr

Joa ziemlich krasse Sache... Danke!

02.10.2014 - 09:26 Uhr

Danke dir für die rasche Antwort und den super Tipp!

Ich werde mich erstmals mit FluentAPI auseinandersetzen um anschließend mit diesem Prinzip + Code-First meine Custom SimpleMembership zu erstellen.

Hast du eine gute Empfehlung zu FluentAPI oder soll ich schlicht danach googlen?

Viele Grüße
Mekallica

01.10.2014 - 23:45 Uhr

Verwendete Systeme: VS2012/C# & Sql Server 2014

Guten Abend zusammen,

erstmals vielen Dank für diese hervorragende Seite!!!! Bin neu hier und hoffe auf eine qualifizierte Antwort

Ich versuche gerade als Übung eine Internetseite zu programmieren, die es erlaubt nach bestimmten Eigenschaften der registrierten Personen zu suchen und diese zu filtern. ZB. Gib mir alle Menschen, die Horror-Filme mögen.

ASP bzw. EF erstellt nach dem ersten Start der Anwendung (nach Anpassung des ConnectionStrings, AccountModels, InitializeSimpleMembershipAttribute) die nötigen SimpleMemberShip-Tabellen (UserProfile, webpages_Membership, webpages_Roles...) Jetzt möchte ich zB folgende Tabelle per EF anliegen (später mit ihr primär auch arbeiten)

UserData
==========
* UserId
* Vorname
* Nachname
* Geburtsdatum
* BildId
* FilmGenre
* ---
* ---

und eine 1:1 Beziehung zwischen "UserProfile" und "UserData" über "UserId" herstellen.

Könnt ihr mir bitte dabei helfen, wie ich das "am saubersten" anstellen kann? Ich habe das ganze Forum über vier Tagen durchsucht und leider keine relevanten Informationen gefunden.

Beste Grüße
Mekallica