Laden...

Forenbeiträge von kunsti Ingesamt 89 Beiträge

24.07.2015 - 10:37 Uhr

Hi, danke für die Antwort.
Wie meinst du das?
Es gibt nur eine VM einen Stream wieder, welcher von anderen PCs gesehen werden soll...
Habe eben den Hinweis erhalten, dass es sein kann dass die ACL, das UDP protokoll sperren.
Da wird nachher mal anch geschaut und gegebenfalls freigegeebn.
Werde den Thread dann entsprechend anpassen...

24.07.2015 - 07:20 Uhr

Guten morgn,
ich hoffe ich bin in diese, Bereich hier richtig.
Ich verwende aktuell FFMPEG um einen http mjpeg Stream zu re-streamen.
Dabei wird der der Stream an localhost per udp-Protokol gesendet.
Dieser Stream soll dann von anderen PCs aus aufgerufen werden.
Wenn ich per VLC-Player den Stream Lokal teste, also auf der vm den Player starte und bei Netzwerkstream die Addresse

udp://@127.0.0.1:8082

eingebe, dann kann ich auch streamen.
Gebe ich nun die Addresse von einer anderen Maschine ein, kann der Stream nicht geöffnet werden.
Ein Ping an die VM funktioniert aber.
Die Firewall ist aus und ich hatte schon eine Eingehende Regel für UDP erstellt, dass alles durchgelassen wird.
Ich weiß dass ihr das Netzwerk nicht kennt und auch nicht die genauen Einstellungen der VM, deswegen wäre meine Frage einfach, ob jemand Ideen hat, woran es liegen könnte. Ob es eventuell Einstellungen gibt, die getätigt werden müssen, die ich nicht beachtet habe.

Vielen Dank schon mal und Viele Grüße
kunsti

[edit]
Hatte mal über die cmd und netstat geschaut.
Bei der entsprechenden Verbindung ist bei Remotadresse nur : und bei Status nichts eingetragen. Könnte es eventuell damit zusammen hängen?

21.07.2015 - 11:36 Uhr

Was klappt nicht?
Was heißt wie üblich?
Wie versuchst du den Text zu finden? Ein wenig Code hilft bestimmt

21.07.2015 - 09:50 Uhr

Aus irgend einem Grund, sobald ich den link von hier öffne wird in der URL ein <br/> gesetzt. Und zwei Leerzeichen. Diese musst du rauslöschen.
Habe eben noch malversucht den Link zu posten. Aber der gleiche Fehler tritt auf...

21.07.2015 - 09:04 Uhr

Ansonsten ist das oder das etwas für dich?
Diese Version die zum Restrem verwendendet wir gibt es so nicht mehr.
Nur noch die freie Variante, die den h264 re stream zum iis nicht beherscht.
Eine Alternative könnte ffmpeg sein.

20.07.2015 - 17:39 Uhr

Wie du den MJPEG stream bekomsmt hängt von Modell und Firma ab...
Oft wird eine Befehlsliste auf der Herstellerseite angeboten.
Was hast du denn für eine Marke?
Habe jetzt keinen Link für alle Marken oder so. Für Panasonic sieht es zum Beipsiel so aus:


>

20.07.2015 - 16:18 Uhr

Hi,
also du schaust dir das Aktuelle Bild deiner Kamera an und nimmst es um es anzuzeigen, dann das nächste usw?
Dadurch erstellst du deinen Stream.
Habe ich das richtig verstanden?

Ich hatte neulich auch was mit IP-Kameras zu tun und da gab es die möglichkeit sich per URL direkt einen MJPEG-Stream zu ziehen. Diesen konnte man auch einfach in die Website einbinden.
Hast du nach so einer Möglichkeit schon mal geschaut?

17.07.2015 - 07:56 Uhr

Danke für die Antworten.
Zurzeit läuft es in FF, je nachdem welche Brwoser noch benötigt werden, werde ich es dann wohl mit mehreren embed video lösen, wie es aktosh geschrieben hat.
Oder gibt es eine möglichkeit, wie beim http protokoll, den mjpeh stream in das img tag einzubinden?

16.07.2015 - 16:59 Uhr

Bin nicht an eine Version gebunden.
Laut diesem Post hier benötige ich aber dennoch VLC oder einen der anderen Player...
Oder meinst du mit RealPlayer bzw. QuickTime, würde es in alle Browsern laufen?

16.07.2015 - 16:23 Uhr

Danke, das war es was ich vergessen ahbe abzutippen...
Im VLC-Client hatte ich das @ drin, weshalb es dort funktioniert hat.
Kennt jemand vielleicht eine alternattive zum VLC-Player, der auch von Chrome und Safari unterstützt wird?
Mit dem VLC Player läuft es leider nur noch in FireFox.

16.07.2015 - 15:09 Uhr

Hi,
ich habe eine ASP.NET Anwendung.
Diese soll Kamerastream enthalten.
Die Streams sollen über einen Server geladen werden, aktuell ist es localhost, um das ganze zu Testen.
Die eigentlcihen Kamerastreams werden mit ffmpeg auf localhost re-streamed.
Die Wiedergabe dieses Streams funktioniert im VLC-Client auch ohne Probleme.
Um diesen Stream nun über eine Website aufzurufen, habe ich versucht dor den VLC-Player einzubinden.
Alleridngs wird der Stream nicht wiedergegeben.
Der VLC-Web-Player ist zu erkennen (Leiste mit Controls z.B. Play ist vorhanden), allerdings erfolgt keine Wiedergabe.
Ich weiß leider nicht weshalb und wo ich nach dem Fehler schauen könnte.
Dies waren meine Versuche den Player einzubinden:


<embed src="udp://127.0.0.1:8082/" type="application/x-mplayer2"
       width="330" height="310" align="center" border="0"
       autostart="1" transparentatstart="0" animationatstart="1"
       showcontrols="true" showaudiocontrols="1" showpositioncontrols="1"
       autosize="0" showstatusbar="1" displaysize="false" />


<br />

<embed src="udp://127.0.0.1:8082/" type="application/x-vlc-plugin"
       width="330" height="310" align="center" border="0"
       autostart="1" transparentatstart="0" animationatstart="1"
       showcontrols="true" showaudiocontrols="1" showpositioncontrols="1"
       autosize="0" showstatusbar="1" displaysize="false" />

<br />
<embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org" 
       version="VideoLAN.VLCPlugin.2" width="330" height="310" id="vlc" loop="yes"
        autoplay="yes" target="udp://127.0.0.1:8082" />

Viele Grüße
kunsti

06.07.2015 - 09:11 Uhr

Wann merkt der User das denn?

Hab es so verstanden, dass der Befehl aus der Textbox gelöscht werden soll, wenn die Checkbox von checked zu uncheched wechselt.
Dafür würde dann einfache in Event benötigt werden, was du doch bestimmt schon hast, da du ja den string nicht zusammenstellen könntest odeR?

30.06.2015 - 10:33 Uhr

Leider brauch man für IIS Media Services für den Livestream Expression Encoder 4 pro.
Diese Version wird allerdings nicht mehr verkauft und es ist nur noch die normale vorhanden, die den IIS Livestream nicht unterstützt.
Kennt jemand alternativen?

30.06.2015 - 09:28 Uhr

Ach so.
Ne ich versuche Videos zu streamen.
Ja. Es gibt IIS Media Services. Da bin ich gerade dran es zu versuchen.
Den Link den ich gepostet habe, entält eine Anleitung zum streamen mit mehreren Komponenten.

30.06.2015 - 08:01 Uhr

Danke schon mal für die Antwort.
Dabei sehe ich allerdings auch, wei bei meinem Vorschlag (auch wenn mir deiner besser gefällt) das Problem, dass der Stream eventuell zu spät geladen werden könnnte.

Du hast mich allerdings auf eine Idee gebracht. Vielleicht ist es ja möglich auf der VM einen Stream per VLC zu lasen und diesen in der View abzuspielen.
Als ich nach Möglichkeiten gesucht habe dies umzusetzen, bin ich hier drauf gestoßen, was auch interessant aussieht...

Viele Grüße
kunsti

30.06.2015 - 07:20 Uhr

Hi,
ich habe folgendes Problem.
Eine Webanwendung enthält diverse Kamerastreams.
Diese sind aktuell über die View eingebunden.

  <img height="180" width="320" style="border:1px solid" src="@GatesModel.Gates[i].SrcStringForCamera" alt="Kamerastream" />

Die Quelle des Bildes sieht wie folgt aus:

http://xx.xx.xx.xxx/nphMotionJpeg?Resolution=320x180&Quality=Standard

Durch eine Umstellung und da über die IP-Adresse auf die Kamera zugegriffen wird, ergeben sich allerdings Probleme beim Zugriff.
Manche User befinden sich in einem anderen Netzwerk als die Kameras und könenn daher den Stream nicht sehen.

Die Website läuft über eine VM (Windows Server 2012) über IIS.

Meine Überlegung wäre gewesen mit einem MJPG Decoder die Bilddateien zu dekodieren, an die View zu senden und das Bild in regelmäßigen abständen zu aktualisieren.
Das kling meiner Meinung nach nach keiner guten Lösung.

Die Frage wäre nun, ob es möglich ist, den Stream über den Server bzw. die VM zu laden. Die VM hat zugriff auf die Streams, da sie sich im richtigen Netzwerk befindet. Bzw. gibt es eine bessere Lösung als meine angedachte.

viele Grüße
kunsti

23.06.2015 - 07:45 Uhr

sollte mir das nächstemal den Code besser anschauen 😄)

Oder eher ich.
Danke.
Ich hoffe mal das fällt unter die Kategorie "einmal und nie wieder"

22.06.2015 - 15:57 Uhr

Nein das mache ich nicht.
Der gezeigte Code wird innerhalb eines Events asufgerufen.

 $(".dropdown-menu li a").click(function () {

Hatte jetzt mal Testweise in das Skript noch


    $(document).ready(function () {
        alert("redy to go now");
    });

eingebaut.
Ich lade die Seite neu. Die Meldung erscheint, allerdings werden die Checkboxen weiterhin nur dann ausgewählt, wenn ich einen breakpoint setze.

22.06.2015 - 14:42 Uhr

Danke schon mal für die Antwort.
Mit Firebug kann man sich ja den DOM anschauen.
Da sind die Checkboxen vorhanden.

22.06.2015 - 13:31 Uhr

Hi,
ich habe folgenden JavaScript Code.
Dieser holt sich einen String, welcher durch ; getrennt eine Liste von strings enthält.
Für jede Checkbox soll nun überprüft werden, ob die ID in diesem String enthalten ist.
Wenn ja soll die Checkbox aktiviert werden.

        var dayString = "";
        $.get("GetDays", { taskName: selText }, function (result) {
            dayString = result;
        });
        //Check day checkboxes
        var checkboxes = document.getElementsByName("checkBoxDay")
        for (var i = 0; i < checkboxes.length; i++) {
            if (dayString.toString().indexOf(checkboxes[i].id) > -1)
                checkboxes[i].checked = true;
            else
                checkboxes[i].checked = false;
        }

Allerdings wurden die checkboxen nicht markiert.
Also habe ich mich mit Firebug ran gehängt.
Nun wurden die Checkboxen markiert und sind auch markiert geblieben.
Also habe ich es nochmals ohne Debugegr versucht. Nun wurden die Checkboxen nicht mehr angeharkt.
Hatte schon mal jemand ein ähnliches Problem oder hat eine Idee woran es liegen könnte?

Viele Grüße
kunsti

03.06.2015 - 09:59 Uhr

Danke für die Antworten.
Dann werde ich mich mal einlesen und dann wahrscheinlich die komplette View umstellen.
Allerdings kann man Razor doch nicht komplett verhindern, da ich ja an die Daten meines Models kommen muss. Oder hab ich da gerade einen Knick im Denken?
Oder gibt es einen einfachereren Weg, der Methode im Controller mitzuteilen, dass die Seite nicht neu geladen werden soll oder dass zumindest die Bilder nicht neu geladen werden?

02.06.2015 - 16:32 Uhr

Danke hatte es erst so eingebunden:

@Scripts.Render("~/bundles/mycustomjquery")

Da wäre es ja eigentlich auch eingebunden oder?

Wenn ich es mit der Methode von dir einbinde, also


<script type="text/jscript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js">
    $('@openButtonID').click(function () {
        var url = "/Home/Open";
        $.post(url,{index: @i+1});    })
</script>

Dann sieht das script mit Firebug nicht mehr so aus, wie ich es erwartet hätte.
Der Name des Buttons erscheint zum Beispiel auch gar nicht mehr. Hatte es eben mit der Suche überprüft.
Wenn ich es mit der ersten Methode einbinde, liest sich das Skript so wie ich es geschrieben habe.

Bei beiden Varianten komme ich leider wieder nicht in die Methode.
Ein Fehler erscheint dieses mal auch nicht.

02.06.2015 - 15:52 Uhr

[edit]
jetzt habe ich die Fehlermldungen schon mal gefunden.
Danke für den Tip. Werde mal googlen was ich falsch gemacht habe.

02.06.2015 - 15:29 Uhr

Danke schon mal für die Antworten.
Ich habe es noch mal versucht. Der Code sieht jetzt wie folgt aus:


   <script type="text/jscript">
                    $('@openButtonID').click(function () {
                        var url = "/Home/Open";
                        
        $.post(url,index: @i);    })
                </script>
                <button type="button" id="@openButtonID" data-loading-text="Öffnen..." class="btn btn-primary" autocomplete="off"  disabled="@notConnected">
                    Öffnen
                </button>


[HttpPost]
		public void Open( int index )
		{
			LogAction( index, UserAction.Open );
			GatesModel.Gates[index].Open();
			//return RedirectToAction( "Index" ); 			
		}

Allerdings tut sich gar nichts. Ich komme nicht in die Methode Open rein.
Hab ich im script noch einen Fehler?

02.06.2015 - 13:45 Uhr

Hallo allerseits,
ich habe mit ASP.NET MVC eine Anwendung entwickelt.
Diese läuft an sich auch.
Allerdings ist es so, dass auf der Seite Kamerastreams eingebunden sind.
Wenn ich einen Button drücke, soll eine Methode im Controller aufgerufen werden.
Dies schaut aktuell so aus:


   <button type="button" id="@openButtonID" data-loading-text="Öffnen..." class="btn btn-primary" autocomplete="off" onclick="location.href='@Url.Action("Open", "Home", new {index =i} )'" disabled="@notConnected">
                    Öffnen
                </button>

Allerdings läd die Seite dann immer neu, was nicht gewünscht ist.
Nun habe ich es mit AJAX versucht finde allerdings nicht den richtigen einstiegspunkt wo genau ich ansetzen muss.


@using( Ajax.BeginForm( "Open", "Home", new AjaxOptions { HttpMethod = "GET" } ) )
{
    // @Html.TextBox( "ParameterValue" )

    <button type="button" id="btnTest" data-loading-text="Öffnen..." class="btn btn-primary" autocomplete="off" >
        Öffnen
    </button><br />
}

und


$.post('@Url.Action( "Open", "Home" )', { index : 2 } {
<button type="button" id="btnTest2" data-loading-text="Öffnen..." class="btn btn-primary" autocomplete="off" >
    Öffnen2
</button><br />
});

waren meine versuche.
Allerdings weiß ich schon nicht genau, wo ich diese Codeschnippsel überhaupt einfügen soll bzw ob ich diese richtig abgeändert hab.
Kann mir da jemand hilfe stellung geben?
Danke schon mal im Vorraus
Die Methode erwartet als übergabewert einen integer.

Viele Grüße

02.06.2015 - 09:52 Uhr

Im Quellcode wird die Trennung zu den NAchkommastellen ja auch als "." angegeben.
Mein Ansatz wäre das ganze in einen String zu wandeln.
Dann würde ich das ganze splitten in Vor- und NAchkommastellen.
Dann musst du halt alle drei Ziffern ein Zeichen (. oder,) einfügen und am Ende das ganze mit dem jeweils anderen Zeichen zusammenfügen.
Bestimmt geht das auch elegant mit Regex.

01.06.2015 - 15:39 Uhr

Hast du schon debuggt?
sieht irgendwie so aus als wäre binFor null

01.06.2015 - 14:51 Uhr

An welcher Stelle erscheint der Fehler?
Gibt es keine Details zum Fehler?

01.06.2015 - 13:14 Uhr

Du hast ja DataSourceUpdateMode.OnPropertyChanged gesetzt. Das heißt, sobald deine Eigenschaft geändert wird wrid diese Übernommen.
Es existiert auch noch OnValidation. Müsstest dann beim betätigen des Buttons validieren und gegenenfalls true zurück geben. Dann werden die Änderungen übernommen.

01.06.2015 - 11:40 Uhr

Oh, dachte es würde hier rein passen, weil es ja auch was mit POST und HTTP zu tun hat.
Danke. Nun funktioniert.
Als Information für die jenigen die bei ihrere Suche auf den Thread stoßen:
Auch wenn AspNetCompatibilityEnabled in der Web.config auf true geetzt wird, mus dennoch das dennoch [AspNetCompatibilityRequirements( RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed )] für die Serviceklasse gesetzt werden.

01.06.2015 - 10:43 Uhr

Hi,
danke schon mal für deine Antwort.

Ich habe einen WCVService erstellt.


[ServiceContract]
public interface IService
{
	[OperationContract]
	[WebInvoke (Method="POST")]	
	void ListenToPOSTRequests(Stream data);	
}

Die Klasse Service erbt von IService. Dort wird die Methode bereitgestellt.
Was mich gewundert hatte, war dass es mit HTTP-Request funktioniert hatte.
Gibt es eine alternative Möglichkeit, wenn ich nicht auf den aktuellen Kontext zugreifen kann?

01.06.2015 - 09:30 Uhr

Hi,
ich habe eine Service geschrieben, der Post-Nachrichten loggt, die er als POST-Request erhält.
Zunächst wurde das ganze für HTTP erstellt. Das hatte auch ohne Probleme funktioniert.
Nun sollte das ganze auf HTTPS umgestellt werden, was zum Teil auch funktioniert.
Die Request wird erhalten und der body kann ausgelesen werden. Allerdings ist HttpContext.Current null.
Zuerst hatte ich gedacht, dass es daran liegt, dass es eine HTTPS-POST-Request ist. Alerddings existieren im Web einige Beispiele bei denen HttpContext.Current ebenfalls für HTTPS verwendet wird.
Nun habe ich leider keinen Ansatz mehr, woran es liegen könnte. Liegt es an der .config oder eventuell an den Einstellungen von IIS?
An den IIS Einstellungen hatte ich kaum was geändert. Ich hatte ein Zertifikat erstellt und eine Bindung für HTTPS hinzugefügt.
Web.config sieht wie folgt aus:


<system.web>
    <compilation debug="true" targetFramework="4.5" />	
  </system.web>
  <system.serviceModel>  
    <behaviors>
      <serviceBehaviors>
        <behavior name="svcBehavior">        
          <serviceMetadata httpGetEnabled="false" httpsGetEnabled="true"/>         
          <serviceDebug includeExceptionDetailInFaults="true"/>
        </behavior>
      </serviceBehaviors>
	  <endpointBehaviors>
				<behavior name="Web">
					<webHttp automaticFormatSelectionEnabled="True" defaultOutgoingResponseFormat="Json" />
				</behavior>
			</endpointBehaviors>
    </behaviors>
    <bindings>
      <webHttpBinding>
        <binding>
          <security mode="Transport"/>
        </binding>
      </webHttpBinding>
    </bindings>
    <services>
      <service name="Service" behaviorConfiguration="svcBehavior">
        <endpoint name="" binding="webHttpBinding" contract="IService" behaviorConfiguration="Web" />        
      </service>
    </services>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
 <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
	<directoryBrowse enabled="true"/>
  </system.webServer>

Und hier noch die Methode, die bei einer POST-Request ausgeführt wird:


public void ListenToPOSTRequests( Stream data )
	{
		try
		{
			Log.GetLogger.Info( "Data received" );
			Log.GetLogger.Info( HttpContext.Current == null );
			HttpRequest request =    HttpContext.Current.Request;
			Log.GetLogger.Info( "Start Logging Data" );
			LogRequest( request, data );
		}
		catch( Exception e )
		{
			Log.GetLogger.Error( e.ToString() );
		}
	}

Danke schon mal

08.05.2015 - 09:55 Uhr

Hab ich es falsch verstanden?
Dachte du hast die Punkte der Linien als Koordinaten mit x und y gegeben.
Die Linien erstellst du im Paint-Event des Charts.
Als Größe kannst du ja die Koordinaten nehmen, wennd ie zu nah zusammen liegen würde ich eine einfache Umrechnung (x10,x100 etc) nehmen, sodass das verhältnis gegeben ist.
Solange die Beschriftung passt...

07.05.2015 - 16:46 Uhr

Ob es für HTML etwas eigenes gibt weiß ich nicht, aber wennd u den ganzen Text einlesen willst würde ich mit Regex suchen. Da bietet .Net auch schon Klassen an. Du musst lediglich den Text, der durchsucht werden soll angeben und dein Regexmuster.
Regex-Tutorial

07.05.2015 - 13:04 Uhr

Zuerst musst du mit GraphicsPath deine Linien hinzufügen.
Beachte, dass wenn du mehrere Linien hintereinander hinzufügst und keine Verbindung zwischen der letzten Linie und der neuen Linie besteht automatisch eine gezeichnet wird.
Dann muss du nur noch den Pfad füllen.

06.05.2015 - 09:01 Uhr

Ich glaube dir fehlen hier gerade die grundlegendten Grundlagen.
Wie Th59 schon gesagt hat musst du deinen string mit "+="
also

anzahl += "jhk";

Dein Problem sollte noch sein, dass du die Variable jedes mal neu erstellst.

Wieso zählst du einen Zähler hoch, wenn du die Anzahl doch mit "lstbx.Items.Count" ermitteln kannst?
Und wieso konvertiert du eine Zahl, die dir Count zurück gibt in einen String um den String in eine Zahl zu wandeln?

31.03.2015 - 14:32 Uhr

Danke für die Antwort.
Auch bevor ich auf die Form-Eigenschaft zugreife wurde der Stream bereits gelesen.
Er wurde gelesen sobald ich in der Methode bin, auch wenn ich noch keinen Code aufgerufen habe.
Habe die Lösung gefunden:
Man muss der Methode einfach nur einen Stream als PArameter übergeben. Dieser Stream enthält dann die Daten.

31.03.2015 - 13:19 Uhr

Hi,
ich komme mal wieder nicht weiter.
Ich versuche aktuell einen Service zu schreiben, welcher auf POST-Request horcht.
So weit so gut. Die Entsprechende Methode, funktioniert auch wie geplant, wird also nur aufgerufen, sollte ein POST-Request gesenet werden.
Dann versuche ich die Request auszulesen und daran scheitere ich aktuell.
So hole ich mir die aktuelle Request:


HttpRequest request =    HttpContext.Current.Request;
LogRequest( request );

Die Request sende ich aktuell mit Postman, einer App für Chrome.
Die Daten der Request versuche ich wie folgt auszulesen:


string header = "", form ="", param = "";
		
foreach(string s in request.Headers.AllKeys )
{
header += s + "=" + request.Headers[s] + System.Environment.NewLine;
}

foreach( string s in request.Form.AllKeys )
{
form += s + "=" + request.Form[s] + System.Environment.NewLine;
}

foreach( string s in request.Params.AllKeys )
{
param += s + "=" + request.Params[s] + System.Environment.NewLine;
}

Die Daten die dort enthalten sind, sind allerdings nicht die Daten, welche ich auslesen möchte.
Testweise habe ich eine Konsolenanwendung geschrieben, die mit dem HttpListener auf eine Request wartet und da konnte ich die Request auslesen:


listener.Start();
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
Stream input =  request.InputStream;
StreamReader reader = new StreamReader( input, request.ContentEncoding );
string body = reader.ReadToEnd();

Dies funktioniert leider nicht, da der Stream von HttpRequest bereits gelesen wurde.
Ich hatte mal geschaut, wie man diesen Stream mehrfach lesen kann. Dabei habe ich zwei Möglichkeiten gefunden:

  1. Setzte die Position zurück --> wirft allerdings eine HttpException : > Fehlermeldung:

Diese Methode oder Eigenschaft wird nach dem Aufrufen von HttpRequest.GetBufferlessInputStream nicht unterstützt.

  1. Kopiere den Stream vor dem Lesen in einen MemoryStream --> Sobald ich die Methode erreiche ist der Stream aber schon gelesen, was ich mit "ReadEntityBodyMode" bereits geprüft habe.

Hat jemand eine Idee was ich machen könnte oder habe ich einen Denkfehler/ein Verständnisproblem?
Danke schon mal im vorraus und viele Grüße

13.03.2015 - 14:48 Uhr

Sry bin gerade verwirrt.
Du sagst dass MS das mit den lokalen DBs gernemacht ich aber einen echten Server nehmen soll.
Was haben die Datenbanken mit dem Server zu tun?

13.03.2015 - 13:18 Uhr

Hmm irgendwie konnte ich nur ein Bild anhängen.
Hier das zweite

13.03.2015 - 13:17 Uhr

Hi ich habe mal wieder ein Problem.
Ich habe meine Anwendung auf einen Server gezogen und einen Anwendungspool erstellt.
Soweit so gut.
Bis ich eine Datenbankabfrage benötige. Dann erscheint folgender Fehler

Fehlermeldung:
[SqlException (0x80131904): 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: SQL Network Interfaces, error: 52 - Es konnte keine Installation der Local Database Runtime gefunden werden. Überprüfen Sie, ob SQL Server Express richtig installiert und die Funktion Local Database Runtime aktiviert ist.)]

Was habe ich bereits getan?
SQL Server Express installiert
Local Database Runtime installiert
TCP/IP installiert
Den connection String überprüft


<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-GateControl-20150306123752.mdf;Initial Catalog=aspnet-GateControl-20150306123752;Integrated Security=True"
      providerName="System.Data.SqlClient" />
  </connectionStrings>

Die Datenbank ist vorhanden (siehe Anhang)
Außerdem habe ich die Berechtigungen überprüft (siehe Anhang).
Der Aufbau der Ordner ist genau wie bei mir Lokal.... und da funktioniert alles einwandfrei.
Jetzt weiß ich nicht was es noch sein könnte habt ihr eine Idee?

12.03.2015 - 12:25 Uhr

Danke für die Antwort.
Schade dass es nicht geht.
Mir ist nur noch aufgefallen dass ich "data:image/jpeg" und nicht "data:image/mjpeg" angegeben habve. Das ändert aber auch nichts.

12.03.2015 - 11:47 Uhr

Hi,
ich habe eine Webapplikation die sich im C#.Code einen string zusammenbaut, welcher die Quelle eines Bildes darstellt.
Dies sah bisher so aus:


public string SrcStringForCamera
		{
			get
			{
				return  String.Format( "http://" + this.CameraIP + "/nphMotionJpeg?Resolution=320x240&Quality=Standard" );	
			}
		}

Für Firefox und Chrome ist das einbinden auch kein Problem.
Allerdings wird der Stream nicht für IE angezeigt. Nun habe ich im Internet gelesen, dass es dran liegt, dass das Bild zu base64 konvertiert werden müsse.
Dazu habe ich auch einige Sachen versucht. Mit verschiedenene Encodings usw.
Mein Ansatz sieht wie folgt aus, allderdings bekomme ich keinen verwertabren String, denn wenn ich es so mache, wird das Bild in keinem Browser mehr angezeigt.


public string SrcStringForCamera
		{
			get
			{
				string srcUrl= String.Format( "http://" + this.CameraIP + "/nphMotionJpeg?Resolution=320x240&Quality=Standard" );		
				byte[] arr = System.Text.Encoding.ASCII.GetBytes( srcUrl.ToCharArray() );
				////byte[] arr = System.Text.Encoding.UTF8.GetBytes( srcUrl.ToCharArray() );
				string srcUrlBase64 =  "data:image/jpeg;base64,"+Convert.ToBase64String( arr );
				return srcUrl;

			}
		}

Viele Grüße

11.03.2015 - 15:28 Uhr

Ich weiß ja dass er reinspringt, mich hatte nur gewundert wieso.
Aber egal. Ich habe jetzt den Razor Code von Java Code getrennt, jetzt gibt es an einer anderen Stelle noch ein paar Verständnisprobleme, aber mal sehen, ob ich das so hin bekomme.

Danke für Antworten.

11.03.2015 - 12:33 Uhr

Ok, hatte mir zwar schon mehrere Sachen angeschaut, aber anscheinend immer noch nicht verstanden.
Danke schon mal.
Habe eben mal geschaut, was im Code der Website


 if(!(GateControl.Models.GatesModel == null))
                {
                    
                }

Aber dann ist es doch immer noch komisch, dass in die if gesprungen wird oder?
Wenn aus

if (@ViewData.Model == null) sowas wie if (null == null) wird, dann dürfte da doch auch nicht reingesprungen werden oder?
null == null = true, negiert ergibt es dann also false...

11.03.2015 - 12:13 Uhr

Danke für die Antworten.
Ich habe in meinem body-tag das Event onbeforeunload. Dieses ruft folgende Funktion auf.


<script type="text/javascript">
        function logOffFunction() {
            var v = window.location.pathname        
            {
                if(!(@ViewData.Model == null))
                {
                    if( @ViewData.Model.s == "NoButton")
                    {
                        alert("LOgOFF");
                    }
                    else
                    {
                        alert("No LOgOFF");
                    }
                }
                else
                {
                    alert("No LOgOFF");
                }
            }
            else
            {
                alert("No LOgOFF");
            }

        }

Also mein Ziel ist es den Benutzer automatisch auszuleggen, wenn das Fenster geschlossen wird.
Dies habe ich, da es mehrere Views geben kann im Layout gemacht, damit es für alle Views gilt.
Problem ist, dabei jetzt aber, dass der Benutzer auch ausgeloggt wird, wenn er sich einlogt, da das Event ebenfalls aufgerufen wird. Auch wenn er auf einen Button klickt, der eine Action in einem Controller ausführt. Aus diesem Grund setzte ich beim klicken auf einen Button die Property auf true, andernfalls auf false.
Da das Model allerdings auch null sein kann, zum Beispiel, wenn ich mich auf der Login Seite befinde möchte ich prüfen, ob es null ist und den Benutzer nur dann auslogen.
Das Problem ist, dass in den if-Block gesprungen wird, obwohl Model null ist. Und ich verstehe nicht wieso.

Auch wenn ich nur Model, verwende ist es weiterhin null und das Problem mit der if-Abfrage bleibt bestehen.

11.03.2015 - 11:35 Uhr

Hallo liebes Forum,
ich fange gerade an mir selbst zu zweifeln.
Ich bin an eriner Asp.Net MVC Applikation.
In eriner View wird bei einem onclick event geprüft, ob ein Button gedrückt wurde oder nicht.
In der LAyoutView habe ich ein onbeforeunload Event erstellt, welches den Benutzer ausloggen soll, falls er eingeloggt ist. Dies funktioniert an sich gut, allerdings wird er auch ausgeloggt, sollte der Benutzer auf einen Button drücken.
Aus diesem Grund möchte ich anhand einer Variable in einem Model überprüfen, ob ein Benutzer eingelogt wurde oder nicht.
Das PRoblem ist, dass der Benutzer auch nicht eingelogt sein kann und das Model dann null ist.
Aus diesem Grund versuche ich mit einer if zu überprüfen ob das Modell null ist.


if(!(@ViewData.Model == null))
                {
                    if( @ViewData.Model.s == "NoButton")
                    {
                        //Do stuff
                    }
}

Habe bereits auch versucht das ganze auf undefined zu prüfen hatte statt "!(@ViewData.Model == null)" "(@ViewData.Model != null)" versucht. Allerdings springt das script in den if-Block, und wirft da logischerweise eine NullReferenceException.

Bin ich gerade einfach zu blöd etwas offensichtliches zu sehen?

Viele Grüße

09.03.2015 - 10:31 Uhr

Danke für den Hinweis

09.03.2015 - 10:03 Uhr

Den Ansatz hattest Du mit den HTML-Helpern; jetzt kommst Du aber plötzlich mit Client Binding an. 🤔

Dachte dass ich der View ja irgendwie mitteilen muss, was sie anzeigen soll.

Leider fehlt hier das Smiley, welches sich auf den Tisch haut...
Was ein dummer Fehler. Ich hab in meinem Controller die View einfach so zurückgegeben.
Dadurch kannte die View das Model nicht und konnte dann halt dementsprechend auch nicht die Daten anzeigen...

Danke für deine Hilfe..

09.03.2015 - 09:39 Uhr

Was soll der Code werden?

Wie meinst du das?
Was es für eine Anwendung werden soll?
Der User soll Tore steuern können. Aus diesem Grund soll pro Tor zwei Buttons geben (Öffnen und Schließen). In einer TextBox soll der Status des Tores angezeigt werden und damit habe ich aktuell propleme.

Ich dachte, da ich es in den Views versuche bin ich auf der Client Seite, oder habe ich da was falsch verstanden?