Zum Inhalt springen

jasso

Mitglieder
  • Gesamte Inhalte

    562
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von jasso

  1. jasso

    C# Nullable Dynamic Type

    au weh … da hast Du natürlich recht. War noch ein gedankliches Überbleibsel aus meinen ersten Versuchen. Danke so funktioniert es! LG Jasso
  2. jasso

    C# Nullable Dynamic Type

    @arlegermi: "nur Klassen" würde mir vollkommen reichen. Leider funktioniert es damit ebenfalls nicht. Mit ... public interface IBlub<T> where T : class { void InsertOrUpdate(T? givenDBElement = null); } … bekomme lediglich vom Compiler die Meldung: @KeeperOfCoffe: Danke fürs nachgoogeln. Die Ergebnisse habe ich bereits gefunden. Helfen mir nur in meinem konkreten Fall leider nicht weiter. Danke LG Jasso
  3. Hallo, ich möchte aktuell in einer Typisierten Klasse (bzw. erstmal im Interface) einen Typ als Nullable definieren. Geht das überhaupt? Ich kann leider nichts dazu finden. public interface IBaseElement<T> { void InsertOrUpdate(T? givenDBElement = null); } ist leider nicht erlaubt da T per se mal nicht nullable ist. Ich hätte auch versucht etwas wie public interface IBaseElement<T> where T : Nullable { void InsertOrUpdate(T? givenDBElement = null); } zu verwenden, aber auch das akzeptiert mir der Compiler nicht. Danke LG Jasso
  4. Vielen Dank, alle Hinweise waren sehr Hilfreich und haben mich letztendlich ne Lösung finden lassen ☺️. Ich brauche den AutoMapper weil das Mapping nur ein teil eines sehr verschachtelten Mappings ist. Allerdings funktioniert eine Map CreateMap<List<PriceValue>, Dictionary<CurrencyModel, decimal>>() .ConvertUsing<PriceConverter>() ; die dann wiederum public class PriceConverter : ITypeConverter<List<PriceValue>, Dictionary<CurrencyModel, decimal>> { public Dictionary<CurrencyModel, decimal> Convert(List<PriceValue> source, Dictionary<CurrencyModel, decimal> destination, ResolutionContext context) { if(source == null) { return new Dictionary<CurrencyModel, decimal>(); } else { return source.ToDictionary(keySelector: x => Mapper.Map<CurrencyModel>(x.Currency), elementSelector: x => x.Value); } } } verwendet. (Ist ein wenig anders als das vorgestellte Beispiel, aber darauf sollt es final hinauslaufen) LG Jasso
  5. Hallo Zusammen, ich hänge hier grad mit dem Automapper ein wenig fest. Über das EF bekomme ich Elemente die ich dann auf meine Models mappen möchte. Und zwar versuche ich von einer Liste von Objekten in ein Dictionary zu mappen. Im einfachsten Fall versuche ich mein Mapping folgendermaßen: CreateMap<PriceValue, KeyValuePair<Guid, PriceValue>>() .ForMember(dest => dest.Key, opt => opt.MapFrom(src => src.CurrencyID)) .ForMember(dest => dest.Value, opt => opt.MapFrom(src => src)) ; meine Quelldaten sind eine List<PriceValue> und als Ziel hätte ich Dictionary<Guid, PriceValue> Ich bekomme auch keine Fehlermeldung dass ein Mapping fehlen würde, also nehme ich an dass das Mapping an sich der richtige Ansatz ist. Nur leider ist die Ergebnisliste leer (die Quellliste natürlich nicht). hat jemand eine Ahnung was ich beim Mapping in mein Dictionary falsch mache? Vielen Dank und beste Grüße Jasso
  6. Damit unsere Webapplikation nicht von der Erreichbarkeit eines fremden (entfernten) Systems abhängig ist auf das wir keinen Einfluss haben.
  7. Es geht dabei nicht darum sich gegen unser AD zu authentifizieren, sondern unseren Kunden die Möglichkeit zu geben ihre AD-Credentials in unser System zu synchronisieren um sich an unserer Webapplikation mit deren AD-Accounts zu authentifizieren. Eine gewisse Sync-Dauer ist dabei durchaus ok.
  8. Hi Mttkrb, da würde ich Dir an sich zustimmen. Solange ich die Authentifizierung im System durchführen müsste oder davon ausgehen könnte dass das System immer zuverlässig erreichbar ist würde ich die Authentifizierung immer direkt gegen das AD fahren. Da wir die Authentifizierung allerdings lediglich mit den selben Credentials gegen ein Drittsystem (tatsächlich Physikalisch getrennt) durchführen und sicherstellen wollen dass die User sich immer, auch wenn das AD-System grad, aus welchen Gründen auch immer, nicht erreichbar sein sollte, authentifizieren kann, machen wir den Sync der Daten. Das Aktuellhalten der Daten ist dann das nächste Problem um das ich mich zu kümmern habe ;). LG jasso
  9. Hallo zusammen, nur der Vollständigkeit halber. Es gibt wohl keinen "offiziellen" Weg, allerdings hab ich mir ein PowerShell-Script gebastelt mit dem ich das AD-DB-File kopieren und auslesen kann. Daraus kann man auch die PW-Hashes ziehen. # Paths $basePath = Join-Path "C:\ReadADInfo\" $(get-date -f yyyy-dd-MM_HHmmss); If(!(test-path $basePath)) { New-Item -ItemType Directory -Force -Path $basePath; } $shadowCopyPath = Join-Path $basePath "shadowcopy"; $ADDBFilePath = (Join-Path $basePath "ntds.dit"); $SysKeyPath = (Join-Path $basePath "SYS"); #Global Functions function Write-MyHost { param ([string]$output) #Constants $preOutput = "---- "; $postOutput = " ----"; Write-Host ($preOutput + $output + $postOutput); } # copy ntds.dit Write-MyHost "copy ntds.dit"; $s1 = (Get-WmiObject -List Win32_ShadowCopy).Create("C:\", "ClientAccessible"); $s2 = Get-WmiObject Win32_ShadowCopy | Where-Object { $_.ID -eq $s1.ShadowID }; $d = $s2.DeviceObject + "\"; cmd /c mklink /d $shadowCopyPath "$d"; copy (Join-Path $shadowCopyPath "Windows\NTDS\ntds.dit") $ADDBFilePath; # remove linked directory Write-MyHost "remove linked directory"; fsutil reparsepoint delete $shadowCopyPath; rmdir $shadowCopyPath; $IDToDelete = $s1.ShadowID.ToString(); $IDToDelete = """$IDToDelete"""; vssadmin delete shadows /shadow=$IDToDelete /Quiet; # cleanup DB-copy Write-MyHost "cleanup DB-copy"; ESENTUTL /p $ADDBFilePath /!10240 /8 /o; # copy SYS Key Write-MyHost "copy SYS Key"; reg SAVE HKLM\SYSTEM $SysKeyPath; # read SYS Key Write-MyHost "read SYS Key"; $key = Get-BootKey -SystemHiveFilePath $SysKeyPath; # Get Accounts from DB-copy Write-MyHost "Get Accounts from DB-copy"; $ADAccounts = GET-ADDBAccount -All -BootKey $key -DBPath $ADDBFilePath; # Search for given User Write-MyHost "User"; for ($i=0; $i -lt $ADAccounts.length; $i++) { if($ADAccounts[$i].SamAccountType -eq "User") { Write-Host ("User: " + $ADAccounts[$i].SamAccountName); if($ADAccounts[$i].NTHash -ne $null) { Write-Host ("PWHash: " + (($ADAccounts[$i].NTHash|ForEach-Object ToString X2) -join '').ToLower()); } Write-Host ""; } } Die Hashes werden übrigens für den späteren Vergleich MD4(UTF-16-LE(password)) gespeichert. MD4 ist in .NET nicht per Default im Encoding enthalten. Habe aber hier eine brauchbare Klasse gefunden. LG jasso
  10. Hallo zusammen, Ich versuche gerade PW-Hashes aus einem ActiveDirectory auszulesen. Vorzugsweise würde ich das in C# implementieren, leider hilft mir die System.DirectoryServices.AccountManagement-Klasse nicht wirklich weiter. Ziel ist es in einem Fremdsystem gegen AD-Accounts zu authentifizieren (ohne jedes mal eine Verbindung zum Ad-Server herstellen zu müssen um die Anmeldung zu verifizieren). Ich möchte also Usernamen und PW-Hashes in einem drittsystem speichern um dort die Anmeldung selbst machen zu können. Ich möchte also nicht die Plain-PWs auslesen (das wird ohnehin nicht möglich sein da diese ja überhaupt nicht gespeichert werden) sondern lediglich die Hash-Werte zu den Passwörtern abzugreifen. Leider kann ich dazu nichts wirklich hilfreiches finden. Hat sowas schonmal jemand gemacht? Danke LG jasso
  11. Problem gelöst ... es handelte sich um ein Firewallproblem :upps lg joachim
  12. solltest du mit trim in den griff bekommen. ... if (trim($addr_array[2]) != "") ...[/PHP] lg jasso
  13. versuchs mal in etwa so: <?php $addr_array = "http://www.google.de"; echo "<a target=\"_blank\" href=\"" . $addr_array . "\">linktext</a>"; ?>[/PHP] lg jasso
  14. Hallo Leute, ich habe ein kleines Problem(chen) mit einer ASP.NET-Page an welche ich Dateinamen als Parameter übergeben will. folgendes kleines Script (VB): Dim ausgabe As String = "" For Each key As String In Request.Params.Keys ausgabe &= key & "=" & Request.Params(key) & "<br>" Next parameter.InnerHtml = ausgabe gibt mir sämtliche Parameter aus. Sobald ein Parameter im Wert einen Umlaut enthält (äöü) wird mir die ganze Seite nicht mehr ausgeführt und ich bekomme die Meldung "The page cannot be displayed". Der Fehler kommt auch wenn ich den Parameter Urlencoded übergebe. Kennt das noch jemand? Bin mir auch nicht ganz sicher ob ich hier richtig bin da es sich ebensogut um eine Servereinstellung handeln könnte (IIS6/.NET 2.0.50727). lg jasso
  15. doch ... durchaus verständlich. hab mir sowas ähnliches auch schon gedacht nur noch nicht recht gewusst wie ich nen complexType selber zusammenschraube du bist jetzt mein persönlicher hero-des-monats^^ danke erstmal. da ich jetzt den Testservice erfolgreich ansprechen kann werd ich mich mal an den externen wagen. Ich hoffe ich darf dich auch weiterhin mit Fragen hierzu löchern falls ich z.B. mit der Authentifizierung nicht klar komme lg jasso
  16. Habe jetzt "soap.wsdl_cache_enabled=0" in der PHP.ini gesetzt um den cache mal auszuschließen. bis auf die sache mit "&'.time()" funktioniert der Testcode auch wunderbar <?PHP error_reporting(E_ALL); ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache... ini_set("display_errors", "1"); // errors on... ini_set("memory_limit","512M"); try { $soapy = new SoapClient('https://scripts.portal-anmeldung.de/ws1/service1.asmx?WSDL', array( "trace" => 1, )); // echo "<font color=\"green\"><br />ShowAllFunctions:<br />"; $result = $soapy->__getFunctions(); echo "<pre>", var_dump($result) , "</pre>"; echo "</font><br /><br />"; try { $result = $soapy->__call("Eeeeeeeeechooooo", array("blub")); echo "<pre>", var_dump($result) , "</pre>"; echo "<font color=\"blue\"><br />LastRequest:<br />"; $result = $soapy->__getLastRequest(); echo str_replace("><", "><br><", htmlentities($result)); echo "</font><br><br>"; echo "<font color=\"blue\"><br />LastResponse:<br />"; $result = $soapy->__getLastResponse(); echo str_replace("><", "><br><", htmlentities($result)); echo "</font><br><br>"; } catch (SoapFault $e) // Wenn der Call einen Error wirft { $result = $soapy->__getLastRequest(); echo str_replace("><", "><br><", htmlentities($result)); echo "<font color=\"red\"><br />Soapfault:<br />"; echo "<pre>", var_dump($e) , "</pre>"; } } catch (Exception $e) { var_dump($e); } ?>[/PHP]Er gibt mir schön die vorhandenen Funktionen aus und ich kann die Funktion allem anschein nach auch aufrufen. Nur kommt halt nach wie vor kein Ergebnis zurück: Das Problem scheint hier zu sein dass er mir im Request den Parameter "schluckt". Rufe ich die HelloWorld-Funktion auf wird die Rückgabe korrekt serialisiert (also funktioniert das schonmal wunderbar). Nur wie gesagt die Parameter gehen irgendwo verloren. lg jasso
  17. Sorry für doppelpost (edit geht nicht mehr): anzufügen wäre hier evtl dass ich: <?PHP error_reporting(E_ALL); ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache... ini_set("display_errors", "1"); // errors on... try { echo "1<br>"; $client = new SoapClient('https://scripts.portal-anmeldung.de/ws1/service1.asmx?WSDL', array('trace' => 1)); echo "2<br>"; $result = $client->Eeeeeeeeechooooo('test'); echo "3<br>"; echo "ANFRAGE:<br>" . $client->__getLastRequest() . "<br>"; echo "4<br>"; var_dump($result); } catch (Exception $e) { var_dump($e); } ?>[/PHP] bereits probiert habe und keine Ergebnisse bekomme. Ergebnisseite sieht folgendermaßen aus:
  18. :upps Errors auszugeben sollte eigentlich der erste gedanke sein (ja war denn schon Freitag ...) Hat mir auf jeden fall schonmal sehr weitergeholfen. Das Problem war einfach das fehlende openssl. Soweit funktioniert das nun auch. Als nächstes bekomme ich vom Webservice irgendwie kein Ergebnis zurück (Mal davon abgesehen dass eine Class 'SoapException' allem anschein nach ncht gefunden werden kann ... macht aber nix mit Exception funktionierts). Kann ich mir aus der SoapClient-Klasse die Gesendete und erhaltene XML auslesen? lg jasso
  19. PHP-Version mein Code sieht jetzt so aus: <?php echo "1<br>"; $client = new SoapClient('https://scripts.portal-anmeldung.de/ws1/service1.asmx?WSDL'); echo "2<br>"; $result = $client->Eeeeeeeeechooooo('de_en'); echo "3<br>"; echo $result; ?>[/PHP] leider hab ich das Problem immer noch. Er bricht in der selben Zeile ab. Find ich aber erfreulich wenn jemand damit Erfahrung hat lg jasso
  20. Hallo Leute, ich soll einen Webservice per PHP ansprechen und krieg das irgendwie nicht gebacken. alle Beispiele die ich per Google finden laufen erstmal auf: $client = new SoapClient('...'); raus. soap ist in meiner PHP.ini aktiviert mein kompletter Testcode sieht momentan so aus: <?php echo "1<br>"; $client = new SoapClient('https://scripts.portal-anmeldung.de/ws1/service1.asmx'); echo "2<br>"; $result = $client->Eeeeeeeeechooooo('nudelsuppe'); echo "3<br>"; echo $result; ?> [/PHP] wobei https://scripts.portal-anmeldung.de/ws1/service1.asmx ein eigener kleiner testwebservice von mir ist. nur leider bricht das ganze schon beim [PHP]new SoapClient(.. ab. Kann mir hier bitte jemand weiterhelfen? danke lg jasso
  21. der fehler wurde von unseren Admins letztendlich doch in der Firewall lokalisiert :upps lg jasso
  22. Hi Leute, ich habe einen Englischen IIS 6.0 mit PHP 5.0. Wenn ich jetzt einer PHP-testseite einen Umlaut im Parameter übergebe bekomme ich den Fehler "The page cannot be displayed". auch Urlencoded kann der Umlaut nicht übergeben werden. weiß jemand woran das liegen könnte? danke lg jasso
  23. ich bin immer noch davon überzeugt dass ich's nicht war^^. ich probiers weiter. danke auf jeden fall lg jasso
  24. Hi Leute, ich habe es irgendwie geschafft auf meinem Webserver (Win2003 IIS 6.0) sämtliche MIME-Types zu entfernen. Wisst Ihr eine möglichkeit diese wiederherzustellen? danke Joachim

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...