كيف يمكنني سلك المستخدمين مع كل المجلدات في ASP.NET?

StackOverflow https://stackoverflow.com/questions/125473

سؤال

عندما المستخدم س بتحميل ملف من الملفات سيتم تحميلها على folderA عندما المستخدم س ، folderB ، وهلم جرا.أدوار/لمحات في ASP.NET.المجلدات سوف تكون موجودة من قبل.أي شخص ؟

هل كانت مفيدة؟

المحلول

عليك ربما تريد أن اليد رمز.لا يوجد شيء جوهري ASP.NET لإدارة ملفات المستخدم.ومع ذلك ، فإن القانون للقيام بذلك ينبغي أن يكون من السهل نسبيا.على افتراض اسم المستخدم فريدة من نوعها و لا يتغير أبدا, يمكنك الجمع بين اسم المستخدم مع مسار (استخدام الطريق.الجمع بين) وتحميلها على هذا الموقع.وأود أيضا أن تغلق هذا الموقع بحيث لا أحد آخر يمكن الوصول إليه.

نصائح أخرى

الطريقة التي فعلتها في الماضي هو استخدام قاعدة تحميل المجلد (أقول التحميلات) و في هذا المجلد إنشاء مجلد باستخدام معرف المستخدم من DB.وبالتالي فإن الهيكل ..\تحميل\145 المستخدم مع معرف المستخدم من 145.

أول شيء أن قانون بلدي لا تحقق لمعرفة ما إذا كان المجلد موجود و إذا لم يكن ثم يدعو الدليل.إنشاء() (أو أيا كان جملة) لإنشاء المجلد قبل تحميلها.

مزيد من المعلومات التي قد تجدها مفيدة:أنا أيضا إعادة تسمية الملف باستخدام GUID الذي يتجنب اسم الصراعات إذا كانوا تحميل الملفات 2 مع نفس الاسم.الجانب السلبي هو أنك سوف تحتاج عادة إلى الحفاظ على الجدول مع اسم الملف الأصلي و المادية (GUID) اسم الملف.

يمكنك فقط التحقق من وجود المجلد و إنشاء المستخدم إذا لم يكن موجودا ، ولكن هناك الأمنية المترتبة على هذا.قد ترغب أيضا في محاولة تخزين البيانات في قاعدة بيانات و ربطها المستخدم..هذا يعتمد على ما كنت السماح للمستخدمين تحميل أعتقد.

هناك عدد قليل من الطرق التي يمكنك القيام بذلك:

استخدام مصادقة النماذج

إذا كنت تستخدم مصادقة النماذج ، يمكنك تعيين الاتفاقية حيث المستخدم اسم المستخدم أو معرف يمكن أن تخدم كأساس المسار في الخادم الخاص بك حيث يمكن للمستخدم تحميل ملف.علما أن المستخدم الخاص بك سوف لا يكون لديك إمكانية الوصول المباشر إلى هذا المجلد:يجب أن يكون المستخدم قادرا على تحميل الملفات من الخادم الخاص بك عن طريق تطبيق الويب الخاص بك أيضا.

باستخدام مصادقة Windows

إذا كنت تستخدم windows (على سبيل المثال ، ActiveDirectory) المصادقة يمكنك توفير وصول المستخدم إلى موقع المجلد عن طريق تطبيق ويب.

P. S.- سعيد لرؤيتك هنا مارلون!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top