Now, beforewestart, therearesomeprerequisitesthatyoushouldbefamiliarwith, I wouldsayaboutthreemonthsoffcodingin C sharpandfamiliaritywithbasicsequelwillbesufficient.
Yes, wedotnetcore, butitwillgiveyou a solidfoundationbeforeyoudiveintodeeperandcomplexcoursesattheend, ifyou'reinterestedinmoredetailandindepthcourses, I havecoursesonbothNBCaswellasrazorpageswith a SPdotnetcore, and I wouldalsoshowyouhowyoucanandrollintothosecoursesforthelowestprice.
Thatbeingsaid, let's getstartedonthisexcitingjourneytoexplodethebasicsoff a spdotnetcore, and I willseeyouinthenextradiointhiscourse, willbebuildingtwoprojects.
Firstwillbe a simplerazorproject, and 2nd 1 willbeourmainproject, whichwilluse M.
V.
C.
Soletmedemothefirstprojectthatwillbebuilding.
It's a simplebook.
Wishtoraise a projectinwhich, ifyouselectthebooktab, itwilldisplaylessstuffalloffthebooks.
Now, hereinthelist, youcanseetwotypesoftables.
Thatisbecauseattheend, hereweareusingdatatables, whichmakescalloff a P I ontopherewehave a simpletableusingthandTRtagshere.
Whenyoucreate a book, ifyoutrytoenterwithoutanything, wehavevalidations.
Onceyouenterthedetailstocreate a newbookandyouhitthecreatebutton, itcreatesthebookandthisplaceinboththeplaceshere.
Whenweusedatatables, ifyouclickaddedhereandifwechangesomething, letmemakeit a capital W andupdated.
Thereyougo.
Youcanseeitisupdated.
Ifyoutrytodeleteanything, itwilldisplay a sweetalerttoyou.
Thatbeingsaidwehavemultipleways.
As I wassayingbeforeinthecreatingyourbook, you'llsee a newpagecardcreate.
Soeventhoughthisis a smallprojectforcrowdoperation, thatislotsoffbasicfunctionalitiesandbasicfineoverviewthatyouneedtounderstandthatbeingsaid, let's take a lookatthedemooffourfinalproject, whichiswaymoreadvancedthanwhatyouseerighthereinthisradio.
Letmewalkyouthroughthesmallprojectthatwewillbuildusing M V C.
Thiswillbe a readybasicprojecttocreategreatoperationsonbooklist.
Sorighthereifyougoonbooklestwewillbeusingtheirtablestodisplayalloffthelistfromthedatabase, youcanadd a newbookhere.
Ontheotherhand, whereisevolvingquickly, andhenceMicrosofthadtokeep M V C witheverythingthatwaschanging.
Also, M V C wasbuiltbeforeCloudcameintothebigpicture, eventhoughthatoff M V C applicationsarestillrunningoncloud.
Butitisstillnotbuiltwithcloudinmind.
Finally, inJune, off 2016 Microsoftreleased a SPdotnetcoreandthiswasthefirstworsen.
Now a SPdotnetcoreisbuiltontopoffthenewdarkNetcoreframework.
DarkNatColeistheveryfirstplatformversionoffdotnetandhenceitisnottiredtojustwaitknowsspdotnetcoreascomparedtotheoldversionoff M V C isnottiedtothetartnetframework.
AssemblieslikesystemNotwell, yes, BhagatNetcordteamhasbeenveryactivewiththenewversionsandthenin 2017 dailystartnetcoretofollowedby 2.1 and 2.2 in 28 ing.
Finally, inSeptember, off 2019 sptartNetcordthreehasbeenreleased, whichwewillbeusinginthiscourseinthisvideo.
Ifyoufaceanyissuein a particularlecturesobrokendotcomAndinthereyouhavetogotothecourseistofindoutwhatcourseyourownandinthereindetailsyouwillfindtogethelplinkinthissectionwewillbecreatingarereadyfirstprojectitwillbe a razorproject.
Andthenoncewecreated, wewilltake a lookatthefilesandfoldersthatarecreated.
Withthis, wewouldalsounderstandhowan e s p dotnetcoreapplicationisstarted.
Andwhatarethefiresthatareinvolved?
Solet's getstartedwithallofthatfromthenextradio.
Whenyouopen a publisherStudio 2019 itdisplays a nicepageontheleft.
Withthis, wehavecreatedourprojectandwillbetaking a lookatallthefilesandfoldersthatwecreatedfromthenextradio.
Inthisvideo, wewilltake a briefoverviewonwhatarerazorpages.
Razorpageshavebeenintroducedinspdotnetcordtowindow, andsincethentheyhavebecomethedefaultwayoffcodingWithSPDarkKnightCoachStackRazorPeachesis a newfeatureoff a SPdotnetcorethatmakescodingpagefocusedscenariosmoreeasierandmoreproductive.
Theyprovide a simplerwaytoorganizecourtwith a SPdotnetcoreapplications, keepingtheimplementationlogicandfewmortalsclosertothefewimplementationcode.
Butwewillbeadding a posthandlerwhenwewanttopostanythingfromourviewortherazorpage.
Anotherthingtonoticeisthenameforthegethandler.
Itisprefixedwithonkeyword.
Similarly, ifyouhad a bushedhandler, itwouldbesomethinglikethisinwhichwillhavepublicwideonpostandwillhavetheimplementationwithinthebrackets.
Wewillundothechangethatwedatebecause I justwantedtoshowthatrightnow.
Butasweproceedwiththeimplementingthehandlersforourrazorpagersinthisvideo, let's take a lookattheProjectconfigurationfileinordertoopenthatyoucanrightclickontheprojectnotonthesolution, butontheproject.
AndyouhavetheaddictprojectfileorallyoucandoisdoubleclickontheprojectnameanditwillopenuptheprojectfilethefinenamewouldbetheprojectnameandthentheextensiondotCSProjectprojectfilehasbeentheresince a longtime.
Buttheformeritoffthefileandhowitworks.
It's differentIn a spdotnetcalledthreeintheinitialversionsoff a spdotnetcordwehadfilescardprojectareJasonandexploreAJ.
Thenew C s projectfilereplacesboththefilenowrighthereyoucanseewithinpropertygroupWehavethetargetframeworkwhichisnotcoolat 3.0 whichiswhatweareusingforthisproject.
Letmeshowyou a quickwayWegototoolsNewgatePackagemanagersolutionanddifficultonbrowsLetmeinstallanyfirstpackagethatwehaveWehaveNewtonsofter, JasonSowejustinstalledthatDon't worry.
We'llcomebackanduninstalledothersBut I wanttoshowyoufordemopurposesHowtheprojectfilewillbeaffectedforpracticeisinstalledifyougototheprojectfileagainNowyousee a packagereferencewithNewtandsoftJason.
Soeverytimeyouadd a newgetpackage a packagewherefrontcenturywouldbeaddedhere, rightnowweonlyhaveoneoffthem, whichwejustadded.
Asforourrequirementnow, ifyouhaveworkedwithpreviousversionsoff a SPdark, thatcorethatwas a newgreatformat, a package, andletmeswitchtothepresentationforthat.
Outsideoffthesharedfolder, wehavetheviewimportnowwithdotnetkowtowpointerwhenabove, wehavetaghelpersandwewillunderstandindetailabouttaghelpersinjust a littlewhile.
Sowhat, I willbedefinedinsidethepagemodelherewillbeusedasthemodelfortheindexrazorpage.
Thispagemodelwillbe a codebehindfourhourindexpage.
Thisisnowhereasclosetowhatwehadintheclassic a spdotnetcordbehindthisiscompletelyrewrittenandin a completelydifferentformat, andwewillcallthisdotCSfileasthepagemortalandthedotCIA.
Suchthe M L willbetheviewortherazorpage.
Nowthatwehave a briefoverviewoffrare, whatcodegoes, Let's seerottinginthenextvideowhenwewillseetheindexprivacyandapplicationcomingalongoneoffthetoplevelconsiderationsforthedeveloperoff a serversideWebapplicationframeworkishowtomatch.
Sothiswas a briefoverviewonhowroutingworksandwillbeusingmoretaghelpersandrouting.
Asweproceedwiththecourse.
Inthisvideo, wewilltake a lookattaghelpers.
Takhelpersarebrandnewto a SPDarkNetcoreMicrosoftlookatthesuccessaroundtheotherlibrarieslikeangularJs, reactandothers, anddecidedthatimplementinganangulardirectivelikeexperienceinthenewSBdotnetwassoimportanttotheadoptionoff a SPGartnercoreandbecauseoffwhichtheydecidedtocreatetaghelpersfromground.
Sir.
Attackhelpersenablesouls I kowtow, participateincreatingandrenderingHTMLelementsinsidetherazorfiles.
Thoughtherearesimilaritiesbetweenangulardirectivesandtaghelpers, thereis a majordifference.
Inclassic A SPDarkNetcalledinthesystem, DrWebb, Assemblytookcareoffstartingtheapplicationandglobaldot s e x hadthemethodsinwhichyoucouldprovidecustomlogic.
Theconfigurationisdonebycallingcreatehostbuilder, whichis a matterIntheprogramclassthatreturns I hostbuilderonthatobject, buildandruniscalled, andfromthatpointonwards, thisapplicationhasbecomeanSPdotnetcoreapplication.
Createhostbuildercallscreativeartbuilderon a staticWebhostclassthatconfigurestheWebhostusingdefaults.
Itdealswiththeconflagrationonhow a SPtartnetcorddealswithWebserverconfigurationfilesroutingandsoon.
TheWebbuilderisalsoconfickertouse a startupclassfile.
Andifyougoonthestartofclassfilebypressing F 12 here, oryoucangothesolutionExploderstartedclassfilerighthereyoucanseeStart, ofcourse, is a simpleclassnotderivingfromanyotherclass.
Now, whenthedatadriversthroughthepipeline, itgetsmanipulatedbyindividualmedalbearsandsodoestheresponsearetheresultLet's take a lookat a 10,000 footimageoff.
Whathappenswhenthisrequestismadeinthenextradio?
SowhenthequestionsmadefromthebrowseritfirstarrivesatWebsterwerelikeYeah, yes, I yes.
Well, then, inwalkedthedarknetruntime, whichwouldloadthe C l r.
Themainmatterandthestartedclasswouldconfiguretheapplicationandtherequestwouldberoutedfrom I s toCastellandthenitwillbepushedtotheapplication.
Afterthat, itwillbeprocessedbyallthemiddlewhere s anddegeneratedresponsewillbefeltitbacktotheCastrolwhichwillwithoutitbacktotheyesthatwillfinallyproducetheresponseonthebrowser.
Thisismuchmoreofficiatethantheoldsystem.
DarkWebapproach.
ClassicSystemreliedheavilyonsystemDarkWeb, whichwastiedtoyou, yes, butusing a pipelineapproach, weonlyplugintheMiddleWestthatweneed.
Everythingwepluginisin a separateassemblyexposedin a newgetnowsaidsystem.
Thatcorecashforis a lightweightWebserver, whichcanonlyexecutetherequestbecauseoffeacheveningexternalWebservertoeconfickeroftheoptionslikesecurityhashing.
Thenwehavethehttpsredirectionmiddlewherewehavethemiddlewhereforstaticfilesbecauseoffthestaticfilesmiddle, wherewewillbeabletousetheCSSJavascriptandimagesthatweeverhadinsidethe W W rootfolder.
Letmejustwalkyouthroughthatagainin a briefoverviewsothatthismakescompletesensewhentherequestcomesintotheserver, theserverandaccessesthedotnetcoreframeworkandputstherequestinto a contactstopchecked.
ThecontextgetspassedalongthroughtheMiddleWest.
Andif a middlewherehas a response a liveralongtheway, thenitwillattachthatresponsetothecontextobjectandthenpassedthatcontext.
Youcanalsostorethemremotelyon a server, butABsettingsisgenerally a placewhereyouhavethemwhenyou'reinitiallydevelopinginthefuturevideos, wewillbeaddingmoresettingsherelikeconnectionstrings, andwe'llbeaccessingthisvariablesinsidethestartofclassfilewhenweusedependencyinjection.
Sothat's thebriefoverviewofftheABsellingstockChaseonfilespdotnetcoursesupportsdependencyinjectionsoftwaredesignpattern, whichis a techniqueforachievinginversionoffcontrolbetweenclassesandthey'redependencies.
Nowyoumightbewonderingwhatisour U.
C orinversionoffcontrolcontainer?
IOCContaineris a frameworkforimplementingautomaticdependencyinjection.
WehaveBobherewhohasbeenthinkingaboutgoingon a hikingsohemakes a listoffallthesupplies, likemaps, flashlights, proteinbars, etceteraandputsthemin a backpack.