Kære udviklere,
Nu er jeg ved at få lange grå hår af træthed. Jeg sidder med et projekt hvor jeg skal opbygge et galleri site, i asp.net c#. Gallerivisning mm. fungerer fint, men nu er jeg kommet til backend delen. Min upload til mapper, med resize til thumbnails mm. fungerer også fint.
Jeg er kommet til det punkt hvor jeg vil kunne oprette kategorier, hvor den sender kategorinavnet op til databasen samt opretter en mappe under "uploads" som har samme navn som kategorinavnet.
Min kode skulle fungerer fint:
- protected void Button_tilfoej_click(object sender, EventArgs e)
- {
- string katNavn = TextBox_kategorinavn.Text;
-
- SqlConnection conn = new SqlConnection();
- conn.ConnectionString = ConfigurationManager.ConnectionStrings["DatabaseConnectionString1"].ToString();
- SqlCommand cmd = new SqlCommand();
- cmd.Connection = conn;
- cmd.CommandText = "SELECT * FROM kategorier WHERE katNavn = @katNavn";
- cmd.Parameters.Add("@katNavn", SqlDbType.VarChar).Value = katNavn;
-
- conn.Open();
- SqlDataReader reader = cmd.ExecuteReader();
- if (reader.Read())
- {
- Label_status.Text = "Det valgte kategorinavn eksisterer desværre. Prøv igen.";
- }
- else
- {
- string _directoryName = "~/uploads/"+ katNavn;
- if (Directory.Exists(_directoryName))
- {
- Label_status.Text = "Kategorimappen eksisterer allerede. Prøv igen.";
- }
- else
- {
- Directory.CreateDirectory(_directoryName);
- Directory.CreateDirectory(_directoryName + "/normal/");
- Directory.CreateDirectory(_directoryName + "/thumb/");
-
- tilføj(katNavn);
- Label_status.Text = "Kategorien er tilføjet med succes!";
- }
- }
- conn.Close();
- }
Mit check på om mappen og kategorien findes, fungerer fint. Men skriver jeg et kategorinavn som ikke eksisterer, så fremkommer der fejl. Jeg har en fornemmelse af at det har noget med mine skriverettigheder at gøre.
Min fejlmeddelelse:
Detaljer om undtagelse: System.UnauthorizedAccessException: Adgang til stien '~/uploads/Fest' blev nægtet.
ASP.NET har ikke tilladelse til at åbne den ønskede ressource. Du bør overveje at give anmodnings-id'et i ASP.NET adgangsrettigheder til ressourcen. ASP.NET har et grundlæggende proces-id (typisk {MACHINE}\ASPNET i IIS 5 eller Netværkstjeneste i IIS 6 og IIS 7 og den konfigurerede programgruppeidentitet i IIS 7.5), der bliver brugt, hvis programmet ikke repræsenterer et andet program. Hvis programmet repræsenterer et andet program med <identity impersonate="true"/>, er id'et den anonyme bruger (typisk IUSR_MACHINENAME) eller den godkendte anmodningsbruger.
Hvis du vil give ASP.NET skriveadgang til en fil, skal du højreklikke på filen i Stifinder, vælge "Egenskaber" og vælge fanen Sikkerhed. Klik på "Tilføj" for at tilføje den pågældende bruger eller gruppe. Marker ASP.NET-kontoen, og marker de relevante afkrydsningsfelter for den ønskede adgang.
Jeg har prøvet at følge op på hvad der står i fejlen, uden held. Jeg har sammen med en ven prøvet at slå det op (næsten overalt) på nettet. Vi kan simpelthen ikke finde noget resultat.
Er der nogle der ligger inde med et svar, eller en idé så ville jeg blive super glad. For det her driver virkelig én til vanvid!
Indlæg senest redigeret d. 21.03.2012 13:13 af Bruger #16025