none
Blob Storage mit Website Verbinden

    Frage

  • Hallo,

    ich habe eine Webfrontend, in welches ich einen Pfad eingeben muss, der wiederrum zum Blob Storage verweisen soll.

    Also:

    -eingabestring auf dem WEbfrontend:

    http: //xx.blob.core. windows.net / mxx

    jedoch kann ich die eingabe nicht speichern, denn ich bekomme immer die meldung invalid path.

    das webfrontend nimmt den pfad so entgegen:

    <asp:LabelID="Path"runat="server"></asp:Label>

    </td>

    <tdclass="td_input">

    <asp:TextBoxID="Path"runat="server"></asp:TextBox>

    </td>

    <td>

    <asp:RequiredFieldValidator ID="MPath"runat="server"

    ControlToValidate="MPath"Display="Dynamic"SetFocusOnError="True">!</asp:RequiredFieldValidator>

    Jemand eine Idee?

    Montag, 22. Oktober 2012 09:57

Antworten

  • Die Lösung des Problems:

    Entscheidender Hinweis war die Fehlermeldung: ...........Requested registry access is not allowed.......

    Also ich musste für einen bestimmten registryeintrag die Berechtigung ändern und siehe da, es funktioert wie es funktionieren soll.

    Danke für alle Tips.

    Gruß

    • Als Antwort markiert brseb Mittwoch, 24. Oktober 2012 11:49
    Mittwoch, 24. Oktober 2012 11:49

Alle Antworten

  • Schlagwort connectionstring, wie ist der einzurichten?
    Montag, 22. Oktober 2012 12:01
  • Hallo,

    >>Schlagwort connectionstring, wie ist der einzurichten?

    das wird hier beschrieben:

    http://wazcommunity.wordpress.com/2012/01/24/windows-azure-storage-services-teil-2-von/

    Schöne Grüße

    Oliver

    Montag, 22. Oktober 2012 12:11
    Moderator
  • Ja ok hab den connectionString eingestellt, aber mit den Azure Storage daten (key, name).

    Ich will ja nur einstellen das die website den storage kennt und dan mit einer textbox den pfad zum blob storage angeben, sollte doch gehen?

    der pfad ist dann ja einfach: xxx.blob.core.windows.net ?

    die dateien auf die es einen zugriff geben soll sind schon im blob, somit muss ich ja im code selber nichts mehr anpassen?

    Montag, 22. Oktober 2012 12:32
  • Hallo,

    jetzt muss ich nachfragen, was du eigentlich realisieren willst. Um eine Website mit meinen Blob Storage Account zu verbinden, benötige ich keine URL. Ich benutze in solchen Fällen die Azure Storage Client Library (geht einfacher!).

    Benötige ich aus irgendeinen Grund die URL, bedeutet das aber, dass ich das komplette Handling (Zugriff, Zugriffsrechte, Umgang mit Containern etc.) über REST Services realisieren muss. Dann musst du die entsprechenden HTTP Requests in deine Seite einbauen.

    Wenn Du kannst poste bitte ein paar Details zu deiner Anwendung, ich liefere dann kurzfristig eine Anleitung.

    Schöne Grüße

    Oliver


    Montag, 22. Oktober 2012 14:28
    Moderator
  • Hmm ok,

    also einfach über das anpassen eines connection strings für den storage geht das nicht?

    wollte so auch den zugriff auf azure sql realisieren!?

    z.b Data Source=localhost\MSSQL10_50.InstanceName; Initial Catalog=AdventureWorks

    Hintergrund:

    ich habe ein webfrontend mit 2 texboxes, eine für die datenbank und eine für den storage. dort wollt ich einfach den jeweiligen pfad hinterlegen und dann zugriff haben. möglich?

    webfrontend liegt als service in der cloud, connectionstrings hab ich definiert, funktioniert aber noch nicht. bekomme aktuell die fehlermeldung das ich keinen zugriff auf die azure sql db habe(connectionstring wie im bsp. nur mit meine daten).

    ach und noch was, die dateien im blob storage will ich ich nur lesen, da liegen ein paar dll, xmls drin. schreiben in den blob will ich nicht. sql db jedoch muss ich auch daten schreiben.


    • Bearbeitet brseb Montag, 22. Oktober 2012 17:21
    Montag, 22. Oktober 2012 17:01
  • ...noch ein paar Infos zum genauen vorgehen...

    Ein vorhandenes Webfrontend wollte ich in die Azure Cloud bringen. Projekt geöffnet ->Azure Cloud Service hinzugefügt und Role mit vorhandenem Projekt verknüpft. Dann Deployed.

    Im nächsten Schritt dann eine DB nach SQL Storage deployed und einen Azure Blob Storage angelegt.

    So und diese 3 "Module" sollten jetzt zusammenarbeiten.... sollten !

    Gruß

    Dienstag, 23. Oktober 2012 07:20
  • Hallo,

    ich habe vor einiger Zeit mal einen Blog Artikel zum Einsatz des Blob-Storage verfasst (siehe http://blogs.msdn.com/b/hsirtl/archive/2012/01/16/windows-azure-blob-storage-leicht-gemacht-schritt-f-252-r-schritt-zu-einer-kleinen-beispielanwendung.aspx). Dort steht beschrieben, wie der Zugriff auf den Storage realisiert werden kann.

    Ohne Deine Anwendung konkret zu sehen, ist's etwas schwierig zu sagen, wo genau das Problem liegen könnte. Möglicherweise liefert die TextBox bei Eingabe eines URL einen ungültigen Pfad, weil Zeichen wie "/" encoded werden. Wenn Du den URL auf Blob Storage über die TextBox konfigurierbar gestalten willst, reicht ggf. ja auch nur der Name Deines Storage Accounts. Der Rest ist ja für alle Blob-Storages ähnlich, d.h. der Aufbau der Gesamt-URL ist ja http://<account>.blob.core.windows.net/<container>/<blob>.

    Der Zugriff auf SQL Database sollte eigentlich auch funktionieren. Prüfe am besten Folgendes:

    1. Hast Du die SQL Database Firewall für Deinen Service geöffnet? Das kannst Du im betreffenden SQL Database Server tun. Hier solltest Du unter "Allowed Services" den Wert für "Windows Azure Services" auf "Yes" setzen.
    2. Kannst Du aus Deiner lokalen Umgebung auf die SQL Database zugreifen? (z.B. über das Management Studio) Wenn nicht, solltest Du die SQL Database Firewall zu Testzwecken auch noch für Deine lokale IP Adresse öffnen.
    3. Geht der Zugriff vom Emulator aus auf SQL Database? Falls nicht, kommentiere in der *.cscfg mal das <Sites>-Element aus. Manchmal hakt es daran.

    Viele Grüße,

    Holger

    Dienstag, 23. Oktober 2012 07:54
  • Ok danke schonmal schau ich mir jetzt an.

    SQl Firewall ist eingerichtet und verbinden kann ich mich auch damit. Komischer weise läuft alles ohne Fehler wenn ich lokal den code im VS2010 ausführe. Den Storage ConnectionString hab ich erstmal rausgenommen, will erstmal das die verb. zur Azure SQl läuft....


    Und zum Blob Storage nochmal, sollte der Zugriff nicht auch über einen Connection String funktionieren? Dort kann ich ja meine Daten (key, name) angeben und der string wird erstellt??
    • Bearbeitet brseb Dienstag, 23. Oktober 2012 08:18
    Dienstag, 23. Oktober 2012 08:16
  • Wieso kann ich mich lokal auf die azure DB verbinden aber mit dem Azure service(webseite) geht es nicht?

    liegt das am connectionstring? den hab ich jetzt nur in der web.config???????

    Dienstag, 23. Oktober 2012 11:50
  • In der web.config sollte das schon reichen.

    Hast Du Dir im Training Kit mal das Hands-on-Lab "Introduction to Windows Azure SQL Database" angesehen? Da ist eigentlich recht gut beschrieben, wie man auf unterschiedlichen Wegen (unter anderem auch über Cloud Service WebRoles) auf SQL Database zugreifen kann.

    Das Training Kit findest Du unter: http://www.windowsazure.com/en-us/develop/other/other-resources/training-kit/

    Dienstag, 23. Oktober 2012 12:40
  • ja hab ich gemacht. hier mal der connection string:

    <connectionStrings>

    <addname="SQLAzureConnection"connectionString="Data Source=xx.database.windows.net,1434;Initial Catalog=Csxxx;User ID= axxi@rf7xxrp;Password=xxxx;Trusted_Connection= False;Encrypt=True;MultipleActiveResultSets=True

    "providerName="System.Data.SqlClient"/>

    </connectionStrings>

    Dienstag, 23. Oktober 2012 12:51
  • der sollte soweit ja korrekt sein? an einer bestimmten pos. im web.config muss der ja auch nicht liegen?

    müsste die config.cloud.cscfg auch noch angepasst werden?


    -->das problem ist ja auch das beim debuggen kein fehler auftreten und die verbindung zustande kommt....
    • Bearbeitet brseb Dienstag, 23. Oktober 2012 12:53
    Dienstag, 23. Oktober 2012 12:52
  • Hm, spontan würde ich sagen, dass es Port 1433 (und nicht 1434) sein sollte. Dann wundert es mich aber, dass es von lokal aus geht.
    Dienstag, 23. Oktober 2012 12:54
  • ja das ist genau mein problem das es lokal geht und bei ausführen in azure eine fehlermeldung kommt:

    A network-related or instance-specific error occurred while establishing a
    connection to SQL Server. The server was not found or was not accessible. Verify
    that the instance name is correct and that SQL Server is configured to allow
    remote connections. (provider: SQL Network Interfaces, error: 26 - Error
    Locating Server/Instance Specified)".

    Dienstag, 23. Oktober 2012 13:02
  • Kann es sein das der Fehler mit dem Nuget Package für VS zusammenhängt?

    Überleg schon die ganze Zeit warum es lokal keine Probleme gibt, via Azure Service aber schon?

    • Als Antwort markiert brseb Mittwoch, 24. Oktober 2012 11:47
    • Tag als Antwort aufgehoben brseb Mittwoch, 24. Oktober 2012 11:47
    Mittwoch, 24. Oktober 2012 07:45
  • Die Lösung des Problems:

    Entscheidender Hinweis war die Fehlermeldung: ...........Requested registry access is not allowed.......

    Also ich musste für einen bestimmten registryeintrag die Berechtigung ändern und siehe da, es funktioert wie es funktionieren soll.

    Danke für alle Tips.

    Gruß

    • Als Antwort markiert brseb Mittwoch, 24. Oktober 2012 11:49
    Mittwoch, 24. Oktober 2012 11:49