ػیؼتن هذیشیت هحتَا سا بشسػی خَاّین کشد. دس ابتذا ًگاّی بِ عشیقِ ًلب آى خلَاّین
داؿلت ٍ ػلپغ توشکلض خلَد سا بلش سٍی کلذّا قلشاس. هیذّین. ًصة. Mojo Portal.
تحلیل سیستم مدیریت محتوای
Mojo Portal
استاد راهنما :مهندس ایرانی
مهدی عیسی لو 8013535178
فْرظت ًصة 2 ........................................................................................................................ MOJO PORTAL ًلب MOJOبا اػتفادُ اص 2.................................................................................. MS WEB DEPLOYMENT TOOL ًلب دػتی دس 7.......................................................................................................................... IIS تَظعِ دادى هَجَ 31 .......................................................................................................................... ًگاُ کلی بِ ػَسع کذ هَجَ 14 ............................................................................................................ کاهپایل کشدى ػَسع کذ دس ٍیظٍال اػتَدیَ 15 ...........................................................................................
با اػتفادُ اص 16 ................................................................................... ASP.NET Development Server با اػتفادُ اص 16 ...................................................................................................................... IIS تغییش دادى ًَع 18 ................................................................................................................... DBMS ًگاُ کلی بِ هاطٍلْا یا ّFEATUREای هَجَ پَستال 19 ....................................................................................... ایجاد یک هاطٍل ػادُ 21 .................................................................................................................... اضافِ کشدى هاطٍل بِ ػیؼتن ًلب خَدکاس 26 ............................................................................................ اضافِ کشدى یک جذٍل بِ دیتابیغ اص عشیق ػولیات ًلب 30 ........................................................................... اضافِ کشدى الیِ ّای DATA ACCESS ٍ BUSINESSبِ هاطٍل 33 ............................................................................. هعواری 13 ....................................................................................................................................... الیِ 35 ....................................................................................................................... PRESENTATION الیِ 35 ............................................................................................................................. BUSINESS الیِ 36 ........................................................................................................................ DATA ACCESS
1
موجوپورتال ()MOJO Portal هَجَپَستال یک CMSاص جاهؼِ Open Sourceاػت کِ تقشیبا بِ كَست کاهلل تَػلظ Joe ًَ Audetteؿتِ ؿذُ اػت .ایي ػیؼتن هذیشیت هحتَا تحلت .Netتَػلؼِ دادُ ؿلذُ اػلت ٍ هیتَاًذ سٍی دیتابیغ ّای SQL Server ،PostgreSQL ،MySql ،FirebirdSql ،MSSQL SQLite ٍ Compactهَسد اػتفادُ قشاس بگیشد .دس ایي ًَؿتِ ها اص لحلاػ بشًاهلِ ًَیؼلی ایلي ػیؼتن هذیشیت هحتَا سا بشسػی خَاّین کشد. دس ابتذا ًگاّی بِ عشیقِ ًلب آى خلَاّین داؿلت ٍ ػلپغ توشکلض خلَد سا بلش سٍی کلذّا قلشاس هیذّین.
ًصة Mojo Portal ًلب هَجَ اص دٍ عشیق اهکاى پزیش اػت: ً .1لب ػادُ با اػتفادُ اص Microsoft Web Deployment Tool ً .2لب دػتی سٍی IIS ها ّش دٍ ًَع سا بشسػی خَاّین کشد:
ًصة Mojoتا اظتفادُ از MS Web Deployment Tool سٍؽ کاس بِ كَست صیش اػت:
2
ابتذا بایذ فایل ًللب هَجلَ سا داًٍللَد کلشد .فایلْلای ًللب داسای ًلاهی بلِ ؿلکل صیلش هیباؿٌذ: mojoportal-x-x-x-x-mssql-deploymentfiles.zip البتِ بشای دیتابیغ ّای دیگش ّن ًام دیتابیغ هشبَط دس آى قشاس هی گیشد. ػپغ MS Web Platform Installerسا داًٍلَد کٌین .اص هیاى ابضاسّای ًولایؾ دادُ ؿذُ دس قؼوت Web Platformبشًاهِ Web Deployment Toolسا ًلب هیکٌین. پغ اص ًلب ایي بشًاهِ ،یک گضیٌِ دس IISبا ًام Import Applicationظلاّش هیـلَد. سٍی آى کلیک هی کٌین .دس صیش تلاٍیش هشبَط بِ هحیظ ًشم افضاس ٍ ّوچٌلیي IISسا هلی بیٌیذ.
شکل - 3هحیط ًرم افسار MS Web Platform Installer
3
شکل - 2هحیط ٍ IISاضافِ شذى گسیٌِ Import Applicationدر قعوت پاییي ٍ راظت
پغ اص کلیک سٍی لیٌلک گفتلِ ؿلذُ ،كلفحِ ای بلاص هلی ؿلَد کلِ بایلذ دس آى آدسع فایل فـشدُ داًٍلَد ؿذُ سا دادُ ٍ Nextسا هیضًین. دس ایللي قؼللوت توللام کاسّللایی کللِ الصم اػللت اًجللام ؿللَد ًوللایؾ دادُ هیـللَد .دس ؿکل 4هی تَاًیلذ ایلي كلفحِ سا هـلاّذُ ًواییلذ .تولام گضیٌلِ ّلا سا اًتخلا کلشدُ ٍ اداهِ هی دّین. دس كللفحِ بؼللذ ،هـخلللات دیتللابیغ هَسدًیللاص ًوللایؾ دادُ هیـللَد .دس ؿللکل 5ایللي هـخلات سا هی بیٌیذ.
4
شکل - 1صفحِ اًتخاب فایل فشردُ هَجَ
شکل - 3صفحِ کارّایی کِ تایذ رٍی فایلْا اًجام شَد
5
شکل - 5هشخصات دیتاتیط
پغ اص تٌظین ایلي هـخللات بلا صدى دکولِ Nextػولیلات ًللب ؿلشٍع هلی ؿلَد ٍ بلا تلَیش ؿکل 6پایاى هی یابذ.
شکل - 6پایاى عولیات ًصة
6
ًصة دظتی در IIS سٍؽ کاس بِ تشتیب صیش اػت: .1ابتذا فایل ًلب هَجَ سا بِ تشتیبی کلِ دس قؼلوت قبلل گفتلِ ؿلذ داًٍللَد هلی کٌلین ٍ آى سا اص حالت فـشدُ خاسج هی کٌین. .2بللا اػللتفادُ اص ابضاسّللای هللذیشیت دیتللابیغ ،پایگللاُ دادُ هللَسد ًظللش خللَد سا ایجللاد هیکٌین .بشای هثال ها اص MSSQLاػتفادُ هی کٌین. .3پللغ اص ایجللاد دیتللابیغ خللالی ،اص قؼللوت ،Securityسٍی Loginکلیللک ساػللت کشدُ ٍ New Loginسا اًتخا هی کٌین. .4دس پٌجشُ باص ؿذًُ ،ام کلاسبشی سا کلِ هلی خلَاّین بلِ ػٌلَاى كلاحب دیتلابیغ بلا آى کللاس کٌللذ سا هـللخق هللی کٌللین ٍ سهللضی سا بللشای آى اًتخللا هیکٌللین .قؼللوت Enforce Password Policyسا غیللش فؼللال هللی کٌللین .دس پللاییي كللفحِ ّللن ًللام دیتللابیغ ایجللاد ؿللذُ خللَد سا بللِ ػٌللَاى Default Databaseاًتخللا هیکٌللین. ػللپغ سٍی User Mappingکلیللک هللی کٌللین .دس ؿللکل 7هللی تَاًیللذ ایللي تٌظیوات سا ببیٌیذ. .5دس كللفحِ ،User Mappingدیتللابیغ ایجللاد ؿللذُ خللَد سا اص لیؼللت دیتللابیغ ّللا اًتخللا ًوللَدُ ٍ ػللپغ اص قؼللوت پللاییي گضیٌللِ db_ownerسا تیللک هیللضًین. (ؿکل 8سا ببیٌیذ) .6ػللپغ بللِ كللفحِ تٌظیوللات IISسفتللِ ٍ سٍی Default Websiteاص ػللوت لل کلیللک هللی کٌللین .اص ػللوت ساػللت ،سٍی گضیٌللِ Basic Settingsکلیللک هیکٌللین. دس پٌجشُ ای کلِ بلاص هلی ؿلَد آدسع پَؿلِ wwwrootسا اص فایلْلای داًٍللَد ؿلذُ هَجللَ سا دس قؼللوت ٍ Physical Pathاسد هللی کٌللین .قؼللوت ّللای گفتللِ ؿللذُ دس ؿکل 9بِ سًگ قشهض ًـاى دادُ ؿذُ اًذ.
7
شکل - 7تٌظین کارتر ترای دیتاتیط
شکل - 8تٌظین دظترظی کارتر
8
شکل - 9تٌظیوات IISترای هشخص کردى آدرض فیسیکی
.7سٍی Application Poolsاص ػللوت ساػللت کلیللک کللشدُ ٍ دس لیؼللت بللاص ؿللذُ سٍی DefaultAppPoolکلیللک هللی کٌللین .اص ػللوت ساػللت گضیٌللِ Advanced Settingsسا اًتخللللللللا هللللللللی کٌللللللللین ٍ دس آى Identity ،سا بشابللللللللش NetworkServiceقشاس هی دّلین .بلِ ایلي دلیلل ایلي کلاس سا اًجلام هلی دّلین کلِ بتللَاًین سٍی دػتشػللی ّللای ؿللبکِ کٌتللشل الصم سا داؿللتِ باؿللین .دس ؿللکل 10ایللي قؼوتْا ًوایؾ دادُ ؿذُ اًذ. .8حال بِ پَؿِ فایلْلای ًللب هَجلَ هلی سٍیلن .پَؿلِ wwwrootسا اًتخلا کلشدُ ٍ بللِ تٌظیوللات آى هللی سٍیللن .دس قؼللوت دػتشػللی ّللای کللاسبشاى ،بللشای Network Serviceدػتشػلللی ّلللای ٍ List Folder Contents ،Read & Execute Readسا فؼال هی کٌین( ؿکل )11
9
شکل - 31تٌظیوات پیشرفتِ
.9دس داخللل پَؿللِ ،wwwrootدٍ پَؿللِ بللِ ًاهْللای ٍ App_Data ٍ Dataجللَد داسد .بللشای ایللي دٍ پَؿللِ ،تٌظیوللات سا تغییللش هللی دّللین تللا کللاسبش Network Serviceبتَاًذ هحتَیات آى سا تغییلش دّلذ .یؼٌلی ّواًٌلذ قلذم قبللی ػولل هیکٌلین با ایي تفاٍت کِ بِ ایي کاسبش تظیوات Full Controlهی دّین.
10
شکل - 33تٌظیوات پَشِ wwwroot
.10حلللللال دس داخلللللل پَؿلللللِ ،wwwrootبلللللِ دًبلللللال فلللللایلی بلللللا ًلللللام user.config.sampleهیگللشدینً .للام آى سا بللِ user.configتغییللش هللی دّللین ٍ آى سا بللاص هللی کٌللین .دس ایللي فایللل Connection String ،هشبللَط بللِ دیتللابیغ خَدهاى سا تٌظین هیکٌین .ػپغ فایل سا رخیشُ کشدُ ٍ هی بٌذین. .11یللک هشٍسگللش ایٌتشًللت هللث firefoxسا بللاص هیکٌللین ٍ دس آى ایللي آدسع سا ٍاسد هیکٌین: http://localhost/ .12اگش تٌظیوات بِ دسػتی اًجام ؿذُ باؿٌذً ،لب با هَفقیت بِ پایاى هیشػذ .دس ؿلکل 12 ًتیجِ ػولیات ًلب هَفقیت آهیض سا هی بیٌیذ.
11
شکل ً - 32وایش ًصة هَفقیت آهیس
.13حللال هللی تللَاى بللا کلیللک سٍی لیٌللک ٍ Site Home Pageاسد كللفحِ اكلللی ػللایت ؿللذ .بللا ًللام کللاسبشی ٍ
[email protected]سهللض ٍ adminاسد ػللایت هیـَین .كفحِ اكلی ػایت سا دس صیش هی بیٌیذ.
12
شکل - 31صفحِ اصلی ظایت
تَظعِ دادى هَجَ بشای ایي کِ بتَاًین دس هَجَ تغییشاتلی ایجلاد کٌلینث هلث ایلي کلِ یلک ٍیظگلی جذیلذ بلِ آى اضللافِ کٌللین ،جللذٍلی بللِ پایگللاُ دادُ آى اضللافِ کٌللین ٍ ً ، ...یللاص داسیللن کللِ آى سا دس هحللیظ بشًاهللِ ًَیؼللی ٍاسد کٌللینّ .وللاًغَس کللِ قللب اؿللاسُ ؿللذ Mojo Portal ،یللک ػیؼللتن هذیشیت هحتَای هتي باص اػت ٍ ػَسع کذ آى دس ػایتؾ قابل دػتشػی اػت. هیخللَاّین ػللَسع کللذ هَجللَ سا دس هحللیظ Visual Studioبللاص کٌللین .البتللِ هللی تللَاى دس هحیظ لیٌَکغ ّن ایي کذّا سا با اػتفادُ اص MonoDevelopباص ًوَد.
13
بللشای ایللي کللِ بتللَاًین پللشٍطُ سا دس Visual Studioبللاص کٌللین ،بایللذ آؿللٌایی هحللذٍدی بللا فایلْای هَجَد دس پشٍطُ داؿتِ باؿین.
ًگاُ کلی تِ ظَرض کذ هَجَ اگش ػَسع کلذ هَجلَ سا داًٍللَد کٌیلذ ،هلی بیٌیلذ کلِ تؼلذاد صیلادی پَؿلِ بلِ ّولشاُ تؼلذاد بؼیاس صیادی فایل دس آى ٍجلَد داسد .هَجلَ بلِ كلَستی کلِ داًٍللَد هلی ؿلَد ،هجوَػلِ ای اص 25پللشٍطُ اػللت .اگللش فقللظ بخللَاّین ب لا MSSQLکللاس کٌللین ،تؼللذاد ایللي پللشٍطُ ّللا بللِ 14 هیشػذ. فایللل اكلللی پللشٍطُ mojoportal.slnاػللت .اص ایللي solutionهیتللَاى تٌظیوللات هشبللَط بِ Data Layerسا تغییش داد .بلشای هثلال فلشم کٌیلذ کلِ هلی خَاّیلذ اص سٍی ػلَسع کلذ، فایلْای قابل ًللب بلشای دیتلابیغ ّلای PgSQLسا ایجلاد کٌیلذ .بلشای ایلي کلاس بایلذ اص ایلي solutionاػتفادُ کٌیذ .بؼذا گًَگی اًجام ایي کاس سا خَاّین دیذ. اگش بخلَاّین فقلظ اص MSSQLاػلتفادُ کٌلین (کلِ هؼولَال ّویٌغلَس اػلت) ،هلی تلَاًین بلِ جللای فایللل بللاال اص mojoportal.mssqlonly.slnاػللتفادُ کٌللین .ایللي Solutionبللِ كَست کاهل بشای کلاس بلا MSSQLتٌظلین ؿلذُ ٍ ًیلاص بلِ تظیولات اضلافی ًیؼلت .هلا ّولِ جللا اص ایللي فایللل اػللتفادُ خللَاّین کللشد ،هگللش ایللي کللِ بللِ كللَست ٍاضلل بگللَیین کللِ اص ّ Solutionای دیگشی اػتفادُ هی کٌین. دس هیللاى 14پللشٍطُ ای کللِ دس ٍ solutionجللَد داسًللذً ،للام یللک پللشٍطُ بللِ كللَست bold ًَؿللتِ ؿللذُ اػللت .پللشٍطُ ،mojoPortal.Webپللشٍطُ اكلللی ٍ startupدس بللیي ایللي پشٍطُ ّاػت. سًٍذ کاس کاهپایل بِ ایي كَست اػت:
14
.1توللام پللشٍطُ ّللای هَجللَد دس ،solutionدس صهللاى اجللشا ،کاهپایللل هیـللًَذ .البتللِ هیتَاى اًجام بؼضی اص آًْا سا (هلَاسدی کلِ هشبلَط بلِ ّ UIؼلتٌذ) هتَقلک کلشد .بلشای ایللي کللاس ،ابتللذا پللشٍطُ هللَسد ًظللش سا اًتخللا هللی کٌللین ٍ ػللپغ دس propertiesآى، گضیٌِ Always start when debuggingسا بِ falseتغییش هیذّین. .2پللشٍطُ ّللای غیللش اص ،UIپللغ اص کاهپایللل ؿللذى ،یللک فایللل dllایجللاد هللی کٌٌللذ .اهللا پشٍطُ ّای ،UIبِ ایي كَست کاهپایل ًویـًَذ .ػللت ایلي اػلت کلِ ایلي پلشٍطُ ّلا بلِ كللَست ّ Web Projectؼللتٌذ ٍ خشٍجللی آًْللا ػلل ٍُ بللش فایلْللای ،dllفایلْللای aspxیا ٍ ascxیا ً ashxیض ّؼت. .3پللشٍطُ ّللای UIپللغ اص اتوللام ػوللل کاهپایللل ،فایلْللایی سا بللِ پَؿللِ ّ لای هَجللَد دس پَؿِ Webکپی هی کٌٌذ .بلشای ایلي کلِ گلًَگی ایلي ػولل سا ببیٌیلذ ،هلی تَاًیلذ سٍی یکللی اص پللشٍطُ ّللای UIساػللت کلیللک کللشدُ ٍ Propertiesسا اًتخللا کٌیللذ. دس پٌجللشُ بللاص ؿللذُ دس قؼللوت ،Build Eventsهللی تَاًیللذ لیؼللتی اص دػللتَسات xcopyسا ببیٌیللذ کللِ دس قؼللوت ًَ Post-build eventsؿللتِ ؿللذُ اًللذ .ایللي دػللتَسات پللغ اص کاهپایللل کاهللل ،اجللشا هللی ؿللًَذ ٍ فایلْللای dllسا بللِ پَؿللِ ،bin فایلْلای ascxسا بلِ پَؿلِ ّلای هشبللَط بلِ خَدؿلاى ٍ فایلْلای هشبلَط بللِ setupسا دس پَؿِ Setupکِ ّوگلی دس پَؿلِ ّ Webؼلتٌذ کپلی هلی کٌلذ .هلی تَاًیلذ ایلي فایلْللا سا دس پلللشٍطُ mojoPortal.Webببیٌیلللذ البتلللِ قبلللل اص آى بایلللذ اص بلللاالی قؼوت ،solutionگضیٌِ show all filesسا اًتخا کٌیذ. .4پللغ اص پایللاى یللافتي کاهپایللل توللام پللشٍطُ ّللا ،پللشٍطُ ٍ بللِ ػٌللَاى پللشٍطُ آغللاصیي، ؿشٍع هی ؿَد ٍ كفحِ default.aspxدس كفحِ هشٍسگش ًوایؾ دادُ هیـَد.
کاهپایل کردى ظَرض کذ در ٍیصٍال اظتَدیَ بِ دٍ سٍؽ هی تَاى ایي کاس سا اًجام داد.
15
تا اظتفادُ از ASP.NET Development Server قبلل اص ایلي کلِ بتَاًیلذ پلشٍطُ سا دس ٍیلظٍال اػلتَدیَ اجلشا کٌیلذ ،بایلذ کاسّلای صیلش سا اًجللام دّیذ: .1اص عشیلق DBMSهللَسد ًظللش خلَد ،دیتللابیغ خللَد سا ایجلاد ًواییللذ ٍ کللاسبشاى هشبللَط بِ آى سا ّن دس كَست لضٍم تؼشیک کٌیذ. .2اص قؼلوت بلاالی ًلام پلشٍطُ ّلا دس پٌجلشُ ،Solution Explorerگضیٌلِ Show all filesسا اًتخا کٌیذ. .3بللِ پللشٍطُ mojoPortal.Webبشٍیللذ ٍ دس هیللاى فایلْللای صیللادی کللِ دس آًجللا ٍجللَد داسد ،فایلی با ًام user.config.sampleبیابیذ. ً .4ام ایي فایل سا تبذیل بِ user.configکٌیذ ٍ آى سا باص ًواییذ. .5دس بللاالی فایللل ،قؼللوت هشبللَط بللِ Connection Stringسا بللا تَجللِ بللِ ًللام دیتابیؼی کِ ایجاد کشدُ ایذ ،تلحی کٌیذ. .6پشٍطُ سا با صدى کلیذ F5دس اجشا ًواییذ.
تا اظتفادُ از IIS اػللتفادُ اص IISبللِ دلیللل ایللي کللِ دقیقللا هـللابِ ػشٍسّاػللت ،بْتللش اص اػللتفادُ اص ػللشٍس ASP.NETاػللت .هوکللي اػللت گللاّی یللک ػللایت دس ػللشٍس ASP.NETبللِ ؿللکلی دیللذُ ؿَد اها صهلاًی کلِ دس ػلشٍس آپللَد هلی ؿلَد ،تغییشاتلی دس آى بَجلَد بیایلذ .البتلِ بایلذ ایلي ًکتِ سا دس ًظش بگیشیذ کِ کاس کشدى با ػشٍس ASP.NETساحت تش اص IISاػت. بشای اجشای پشٍطُ دس حالت ،debugبش سٍی IISبِ ایي تشتیب ػول کٌیذ:
16
.1قذهْای اٍل تا پٌجن هـابِ سٍؽ قبلی اػت. .2ػللپغ بللِ كللفحِ تٌظیوللات IISسفتللِ ٍ سٍی Default Web siteاص ػللوت ل کلیللک هللی کٌللین .اص ػللوت ساػللت ،سٍی گضیٌللِ Basic Settingsکلیللک هیکٌللین. دس پٌجللشُ ای کللِ بللاص هللی ؿللَد آدسع پَؿللِ Webسا اص فایلْللای ػللَسع کللذ هَجللَ دس قؼوت ٍ Physical Pathاسد هی کٌین. .3سٍی Application Poolsاص ػللوت ساػللت کلیللک کللشدُ ٍ دس لیؼللت بللاص ؿللذُ سٍی DefaultAppPoolکلیللک هللی کٌللین .اص ػللوت ساػللت گضیٌللِ Advanced Settingsسا اًتخلللا هلللی کٌلللین ٍ دس آى Identity ،سا بشابلللش NetworkService قشاس هی دّین .4حال بِ پَؿلِ فایلْلای ػلَسع کلذ هَجلَ هلی سٍیلن .پَؿلِ Webسا اًتخلا کلشدُ ٍ بللِ تٌظیوللات آى هللی سٍیللن .دس قؼللوت دػتشػللی ّللای کللاسبشاى ،بللشای Network Serviceدػتشػلللی ّلللای ٍ List Folder Contents ،Read & Execute Readسا فؼللال هللی کٌللین .بللشای پَؿللِ ّللای App_Data ٍ Dataکللِ دس داخللل پَؿِ ّ Webؼتٌذ ،دػتشػی Full Controlسا اًتخا هی کٌین. ٍ .5یلللظٍال اػلللتَدیَ سا بؼلللتِ ٍ آى سا بلللِ كلللَست Run as administratorاجلللشا هیکٌین. .6فایللل Solutionسا اص هٌللَی فایللل بللاص هللی کٌللین .سٍی mojoPortal.Webساػللت کلیک کشدُ ٍ Propertiesسا اًتخا هی کٌین. .7دس پٌجشُ بلاص ؿلذُ ،بلِ قؼلوت Webهلی سٍیلن ٍ دس بخلؾ ،Serversگضیٌلِ Use Local IIS Web serverسا اًتخا هی کٌین. .8حال هی تلَاًین بلا صدى کلیلذ F5پلشٍطُ سا اجلشا کٌلین .البتلِ تَجلِ داؿلتِ باؿلیذ کلِ ایللي ًللَع اجللشا بللِ ایللي دلیللل بْتللش اص اجللشای دػللتی بللا اػللتفادُ اص IISاػللت کللِ دس كَست بشٍص هـکل هی تَاى دس هحیظ ٍیظٍال اػتَدیَ ،خغاّا سا بشعشف کشد.
17
تغییر دادى ًَع DBMS دس ًؼللخِ ّللای جذیللذ ػللَسع کللذً ،یللاصی بللِ تغییللش ًللَع ٍ DBMSجللَد ًللذاسد .پللشٍطُ سا بللا اػللتفادُ اص فایللل mojoportal.slnبللاص کٌیللذ .اگللش بللِ قؼللوت بللاالی ٍیللظٍال اػللتَدیَ ًگللاُ کٌیللذ ،ػبللاست Debugسا دس آًجللا خَاّیللذ دیللذ .اگللش سٍی فلللؾ کٌللاس آى کلیللک کٌیللذ، هیبیٌیللذ کللِ بللشای ّللش کللذام اص ّDBMSللا گضیٌللِ جذاگاًللِ ای ٍجللَد داسد .ایللي هغلللب سا دس ؿکل 14هی تَاًیذ ببیٌیذ.
شکل - 33شکل ّای هختلف ترای Release ٍ Debug
اها اگش اص ًؼلخِ ّلای قلذیوی تلش ػلَسع کلذ اػلتفادُ هلی کٌیلذ هلی تَاًیلذ بلِ ایلي ؿلکل ػول ًواییذ: .1پلللشٍطُ ٍ mojoPortal.Businessاص آًجلللا ،قؼلللوت Referencesسا بلللاص کٌیلللذ. هی بیٌیذ کِ یک اسجاع بِ mojoPortal.Data.MSSQLدس آى ٍجَد داسد. .2اگللش هللی خَاّیللذ بللِ DBMSی غیللش اص ٍ MSSQLكللل ؿللَیذ ،ایللي اسجللاع سا حللزف کٌیذ.
18
.3سٍی Referencesساػلللت کلیلللک کلللشدُ ٍ Add Referenceسا اًتخلللا کٌیلللذ. دس پٌجللشُ بللاص ؿللذُ بللِ قؼللوت Projectبشٍیللذ ٍ یکللی اص اسجللاع ّللا سا کللِ بللا mojoPortal.Dataؿشٍع هیـًَذ سا اًتخا ًواییذ. ّ .4وللیي کللاس سا بللشای ّ mojoPortal.Features.Businessللن تکللشاس کٌیللذ ٍلللی دس آًجللا یکللی اص اسجللاع ّللا سا اًتخلا کٌیللذ کللِ بللا mojoPortal.Features.Data ؿشٍع هی ؿًَذ. .5اگللش هللی خَاّیللذ اص MySQLاػللتفادُ کٌیللذ ،هللی تَاًیللذ بللشای پللشٍطُ WebStore ّللن ایللي کللاس سا اًجللام دّیللذ .دس غیللش ایللي كللَست بایللذ آى سا اص پللشٍطُ خللَد کٌللاس بگزاسیذ.
شکل - 35پٌجرُ اضافِ کردى ارجاعات
ًگاُ کلی تِ هاشٍلْا یا ّFeatureای هَجَ پَرتال هَجَپَستال هی تَاًذ هاطٍلْلای صیلادی سا دس خلَد جلای دّلذّ .واًگًَلِ کلِ قلب گفتلِ ؿلذ، هاطٍلْلللای هَجَپَستلللال ،بلللِ كلللَست فایلْلللای ّ dll ٍ ashx ٍ aspx ،ascxؼلللتٌذّ .لللش هللاطٍل هللی تَاًللذ ٌللذ فایللل اص اًللَاع گفتللِ ؿللذُ سا داؿللتِ باؿللذ .بللشای ایللي کللِ هاطٍلْللا دس
19
هَجَ ًلب ؿلًَذ ،اع ػلاتی اص آًْلا دس دیتلابیغ ٍ اع ػلات دیگلشی بلِ كلَست فایلل اص آًْلا رخیشُ هیـَد .اع ػات بِ كَست صیش هی باؿٌذ: .1فایلْللای ashx ٍ aspx ،ascxکللِ هشبللَط بللِ کٌتللشل ّللای ٍ ّؼللتٌذ .ایللي فایلْللا داسای فایلْللای code behindیللا ّ csللن ّؼللتٌذ کللِ بؼللذا ایللي قؼللوت اص آًْللا تبذیل بِ فایلْای dllهیـَد. .2فایلْللای dllبللِ دػللت آهللذُ اص پللشٍطُ ّللای غیللش اص ،UIدس ٍاقللغ Class Library ّؼتٌذ ٍ ّش کذام هجوَػِ ای اص ک ػْای ّ CSؼتٌذ. .3فایلْللای configکللِ هشبللَط بللِ هـخلللات هاطٍلْللا ّؼللتٌذ .هللث فایلْللای config بللشای ایجللاد دیتللابیغ ٍ . ...اص ایللي فایلْللا هؼوللَالبشای اضللافِ کللشدى یللک هللاطٍل بللِ Setupهَجَ اػتفادُ هیـَد. .4فایلْللای resxکللِ فایلْللای اػللتاًذاسد Resourceدس ٍیللظٍال اػللتَدیَ ّؼللتٌذ .ایللي فایلْا ،حاٍی توام هتي ّاّ Label ،اً ،ام دکوِ ّا ٍ ...دس هاطٍلْاػت. .5جلللذٍل ModuleDefinitionsدس دیتلللابیغ ،هشبلللَط بلللِ آدسع فایلْلللای ascx هاطٍلْاػت. .6جللذٍل ModuleDefinitionSettingsدس دیتللابیغ ،اع ػللات بللِ دػللت آهللذُ اص فایلْللای resx ٍ configاػللت .ایللي دیتللابیغ هـخلللات تٌظللین ؿللذُ بللشای ّللش هلاطٍل سا رخیلشُ هللی کٌٌلذّ .لش هللاطٍل هیتَاًلذ ٌلذیي قؼللوت بلشای تٌظلین کللشدى داؿللتِ باؿللذ .صهللاًی کللِ یللک هللاطٍل بللِ كللفحِ اضللافِ ؿللذ ،تٌظیوللات آى اص عشیللق لیٌللک Settingکللِ دس بللاالی آى قللشاس داسد ،قابللل دػتشػللی اػللت .ایللي جللذٍل بللا جذٍل ModuleDefinitionsسابغِ ٌذ بِ یک داسد. ّللش کللذام اص هاطٍلْللای Mojo Portalهللی تَاًٌللذ ػللِ الیللِ داؿللتِ باؿللٌذّ .وچٌللیي ّللش هاطٍل هی تَاًذ ٌذ جذٍل دس دیتابیغ داؿتِ باؿذ.
20
ایجاد یک هاشٍل ظادُ بشای ایي کاس هی تَاًیذ اص solutionهَجلَ بلِ كلَست هؼلتقین اػلتفادُ کٌیلذ .اهلا بلِ دلیلل ایي کِ ًوی خَاّین تغییلشات هلا دس آى باػلی ایجلاد هـلک ت ؿلَد ،یلک کپلی اص آى سا تْیلِ کشدُ ٍ با ًاهی دیگش دس ّواى پَؿِ رخیشُ هی کٌین. پَؿِ ای دس ػَسع کذ ایجاد هی کٌین تلا کٌتلشل آى ساحلت تلش ؿلَد .دس ایلي پلشٍطُ هلا فقلظ هللی خللَاّین یللک كللفحِ خللَؽ آهللذگَیی سا اضللافِ کٌللین .بٌللابشایي ًیللاصی بللِ الیللِ ّللای ً Data ٍ Businessللذاسین .دس ًتیجللِ دس solutionخللَد ،پللشٍطُ ای اص ًللَع Asp.net Empty Web Applicationایجللاد هللی کٌللین .آدسع آى سا بللِ پَؿللِ ای کللِ اخیللشا ایجاد کشدین ،تٌظین هی کٌینً .ام پشٍطُ سا Hello.Web.UIقشاس هی دّین.
شکل - 36صفحِ ایجاد پرٍشُ جذیذ VS2010 -
فایللل web.configایجللاد ؿللذُ سا بللاص هللی کٌللین .ػللپغ بللِ پللشٍطُ mojoPortal.Web سفتللِ ٍ اص فایللل web.configهَجللَد دس آى ،کللل قؼللوت > ٍ