10-4 Episode 3: ASP.NET WebForms 4.0

Download this episode

Download Video

Description

Happy New Year everyone! In this episode of 10-4 we’ll begin seeing how Visual Studio 10 and the .NET Framework 4.0 offer compelling new functionality for web developers. In this episode we’ll be specifically focusing on ASP.NET WebForms 4.0, and what enhancements it offers. We’ll be diving into the new client ID feature being introduced and see how it can be leveraged in web applications that have a high-reliance on client-centric development.

 

In future episodes we’ll take a deeper look at the remaining features of WebForms 4.0 including: viewstate control, data control enhancements, and routing integration. If you’d like to see something particularly emphasized, let us know, and we’ll take it into account for upcoming shows.

For more 10-4 episodes, be sure to visit:

https://channel9.msdn.com/shows/10-4

 

Over and out!

Embed

Format

Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • User profile image
      joechung

      Nice explanation of the new ClientID feature!

      Now that ClientID can be set, wouldn't it make just as much sense to use data binding to set its value?  ClientIDMode=Predictable is nice but has limitations as was pointed out in the video.  Setting a Suffix property is a nice shortcut if you have a data field amenable for use as a suffix, but if you don't, crafting a function that could, say, substitute spaces with dashes would also suffice.

      A note about the video itself, you could have spent more time smoothing down the rough edges. Some of the monologue could have been re-recorded as it was worded a bit oddly. The transition from the end of the content to its summary was a bit jarring, too. The "3D cube" effect transition was cheesy; a simple blend or fade transition would have sufficed.

    • User profile image
      aL_
      dude, are you running ie6? Smiley
    • User profile image
      Jonathan​Carter
      Thanks a lot for the feedback. I apologize for the "roughness" of the video itself. Jason and Brian are MUCH more experienced in the arts of Camtasia, so I'll work out the kinks. I was kind of going for a "conversation" feel, which is why I ended up not re-recording certain parts, but I'll definitely be more mindful of that.

      I'll make sure to kill the cheesy cube rotate as well Smiley

      As far as using some type of method to create your own client IDs instead of using the predictable method, you could definitely go that route. I didn't have time to show that, but it would be pretty intuitive.
    • User profile image
      Jonathan​Carter
      The VPC I was running was XP and I was just using it as is Smiley
    • User profile image
      Stilgar
      I wanna know if the ClienID features will be able to detect collisions. What if there are two entries with the same title? Are we gonna get some exception? Or maybe we can opt for an exception in the cases where we're not sure? Or if we're gonna use the new clientid features we must be sure that it is unique and there are no safeguards?
    • User profile image
      axelriet
      All three 10-4 episodes on XP/IE6 so far, great promotion for your current (and up-coming) operating systems and browsers Wink ... What about Windows 7 and IE8 for episode IV?
    • User profile image
      CKurt
      I agree, nice show but dated enviroment.
    • User profile image
      esoteric
      Nice presentation by Jonathan. Some good explanation of features and I really like this guys style.
    • User profile image
      esoteric
      Is there anything Internet Explorer specific to Visual Studio 2010 and .Net Framework 4.0? Otherwise I don't see the point here.
    • User profile image
      JasonOlson
      Don't read into it too much Smiley. It's just an artifact of the VPC's we are using that have been "approved" and fully tested. Since Windows 7 is still very early and very young, we are wanting to have a virtual environment that performs very well and is stable enough to show off the features of the development tools themselves, not necessarily the environment they are used in.

      You can rest assured that as soon as we are able to, we will be running these bits and doing these shows on Windows 7 Smiley. The Windows 7 bits are in great shape and I can't WAIT until I can start doing all of my programming on it Smiley. Soon, soon, soon Tongue Out
    • User profile image
      Jonathan​Carter
      That's the nature of us trying to provide you with bleeding edge content. The VPC we've been using is newer than the CTP, and we haven't been able to test the VS10 bits on anything other than XP. Is Windows 7 awesome? Of course it is. But we figured you guys would appreciate a preview of early bits enough to look past that Smiley

      We'll definitely take the feedback and see what we can do for future episodes. Thanks again for the comments.
    • User profile image
      Vitor Canova
      I tryed to embed this video in my blog with player's embed option but appear only a black square. After that a paste in a new html page (notepad based) to try again but the problem still. I cannot embed this video?
    • User profile image
      briankel
      Jason, I'm pretty sure you've exceeded your emoticon count for the year in that one post. This is why we can't have nice things.
    • User profile image
      briankel

      Hi Vitor - you're right, something does seem to be broken. I tried to do the same on my blog (I get a white square, not a black one). I've emailed the Channel 9 development team, hopefully they can fix it soon.

      Brian

    • User profile image
      Duncanma
      Try embedding after changing the source line like this


      <param name="source"
      value="http://channel9.msdn.com/App_Themes/default/VideoPlayer3.xap" />


      and see if that fixes it. I'll be updating the site to use a different xap soon, but in the meantime I'd be interested to know if the experience improves with that change (I changed VideoPlayer.xap to VideoPlayer3.xap, for those that don't want to try to parse the html and find the change).
    • User profile image
      mjda

      Thanks for the presentation. It's very useful. Never mind the director skills or the environment version (by the way, it's nice to know it works on older versions). Keep posting.

    • User profile image
      pajocomo
    • User profile image
      rhm
      Was it really cold the day you were recording this? Smiley
    • User profile image
      vinCracker
      Up to half of the video I'm not much impressed with the ClientID, but when it comes to the List I jumped of my chair. I bang my head when  I need to access list from javascript, and finally a relief. By the way, can anyone tell me what is the name of the tool at the bottom. I haven't found such tool in IE6.
    • User profile image
      Waddle
      Wouaou ! An 18 minutes video for a feature that should be built-in for 5 years now. You guys are very slow...
      What I guess is that you realized that free libs will always be better than anything you could ever made. So if you wanna use them (jQuery and Co), you must autorize the developpers to set the client ID.

      I don't congratulate you. You're desining your evolutions to save your plateform and not to bring innovation or to make the developper work easy.

      When you dont want to allow integration of third party products, you close your API (clientID unsetable, and client id generated), but when you realize that your are 5 years late on third party libs, you allow integration to save your plateform.

      happy new year,
    • User profile image
      stevo_
      I share the 'new feature == being able to do id="blah"', but I also understand why its so, and in some ways I think when webforms was being designed, ms didn't have much of a clue about what developers really wanted, ms was still very much - trust us guys you'll love our idea.. and as expected some did and bought well into it, but there was tons still that still wanted to be in control.. I think webforms is one technology that needs a completely new rethink from scratch, but that just won't happen.. nor do I care since I don't really use it.. for me actually I find asp.net and in general System.Web, are a pretty messy assembly but include so much functionality that I wouldn't dare want to try replace.. anyway, good job on enabling this- I know its one of them features webforms people sometimes really want.. although its generally much less about ids, and more about field names and controlling form targets in a better way.. (for interop with processing urls that you don't control).
    • User profile image
      Jonathan​Carter
      I'm from Florida, so it's always cold for me Smiley
    • User profile image
      Jonathan​Carter
      Nice to see you like the predictable feature. The tool I'm using is called the IE Developer Toolbar, and it's awesome Smiley

      http://www.microsoft.com/downloadS/details.aspx?familyid=E59C3964-672D-4511-BB3E-2D5E1DB91038&displaylang=en
    • User profile image
      Rhapsody

      Good presentation. Very clear and good to understand!

      Keep up the good work.

    • User profile image
      thebeebs
      How would this sort of thing handle a user control that contained a drop downlist which had it's Id set to static, that was then put on the page twice?

      Would it throw an error or is it the developers responsibility to ensure that this dosen't happen.
    • User profile image
      Vitor Canova
      Thank's Brian, and thank's too Duncan. I can embed now.
    • User profile image
      WithInThe​State
      To: JonathanCarter

      I know the video is done in Silverlight.  Working for a State Agency, all videos are blocked.

      Can you make your videos downloadable?
    • User profile image
      Pace
      Awesome video. Im struggling in my head though getting round this ID thing. btw im from a win forms bg and am somewhat new to asp.net.

      Are we saying that you can use this clientID as a replacement for using javascript to get the clientID?
    • User profile image
      Human​Compiler

      All videos on Channel 9 are downloadable.  Click on the "Downloads" link up above to see links to the different formats.

    • User profile image
      Human​Compiler
      Agreed.  Having more control over ClientID is super awesome.  Very much looking forward to it!  I think we could cut out 1/3 of the html on Channel 9 with that feature alone.  That's probably a bit of an exaggerated guess, but you get the idea.

      If you need/want complete control over the form and markup, there's always that other ASP.NET productSmiley
    • User profile image
      LogicLabs
      Is MS struggling to afford the heating bill? Smiley
    • User profile image
      axelriet
      The point is that it gives the world the distinctive impression that Microsoft's own devs are still running XP, and are planning to do so for a long time since they present their upcoming 2010 software on it. Apparently Episode IV was made on Vista a last.
    • User profile image
      Vaso
      Thank you, very nice, however it should have been there since beginning of ASP.NET Smiley
    • User profile image
      Muhammad Haroon
      Good presentation on ClienID features in VS2010.
    • User profile image
      mosborn
    • User profile image
      Deactivated User

      Comment removed at user's request.

    • User profile image
      kpayson

      I have a question.  I have a list of linkbuttons inside a repeater.  The links when click execute saved searches in my app.  The links have a command argument which is the savedSearchId.  I would like to be able to add new saved searches from the client client using javascript.  The problem is that the command argument is stored in ViewState which cannot be modified in javascript.  I can hack around this problem but its messy.

      My question is, instead of using the command argument,  will I be able to dynamically create the ClientIds to have the savedSearchId suffixed at the end.  Will I then be able to get this information out in the OnItemCommand event handler?

    • User profile image
      yousef

      Thanks a lot,  nice tips.
       now I am writing the second  version of  my new book. ASP.NET & XML Web Services  technology(Net Framework 4.0).
      this book is for student in the height school who are studing Software Engineering. your tips help me.






    • User profile image
      MJDigital

      Great clip guys Smiley

      One thing that really kinda ruine the vidoes.. Is that we HAVE to see u Big Smile Not that your are ugly and such.. But your kinda in the way when trying to see what happens..

    • User profile image
      rodttu02

      I can't believe people are dogging the editing of the film.  I thought the content was great and that is all that really matters to me.  I could care less if it were in black and white.  Keep putting good content in these videos and all is well with me.

       

    • User profile image
      Visionsoft

      Very casual and good explanation. I like it! Was just wondering which tool do you use to capture screen video with webcam view embedded.

    • User profile image
      sarin

      Dull and irrelevant.

    • User profile image
      ACR

      A very useful feature for ASP.NET 4.0 would be to include Jquery Template and client side binding.  An out-of the box solution that ties client side binding together with ASP.NET would be a major change and benefit in today's Web2.0

    • User profile image
      Metehanma

      Great Show.

      Awesome, Keep it comming, Thanks for the hard work and clear tutorial.

       

      NMTD

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.