dot net guide for beginner

27
.Net training In gandhinagar http://shreedhoon.com/training/aspNetTraining.php . 1 12/17/14

Upload: jayc8586

Post on 14-Jul-2015

222 views

Category:

Career


0 download

TRANSCRIPT

.Net training In gandhinagar

http://shreedhoon.com/training/aspNetTraining.php.

112/17/14

http://shreedhoon.com/training/aspNetTraining.php 2

C#/.NET

Basics 2

Some code is from “C# in a Nutshell” and “Programming C#”

12/17/14

.net training in gandhinagar

http://shreedhoon.com/training/aspNetTraining.php 3

This week

• Event Handling and delegates

• ASP.NET Web Forms

• ASP.NET Web Services

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 4

Event Handling Model

• Delegates listen for the events and call registered handlers

• Each component has a delegate for every event it can raise

• We register a method with the delegate

and the delegate will call the method

asynchronously

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 5

Delegates (1)

• A Button, for example, needs to notify some object when it is pushed

• We don’t want to hardwire (in the button) which object to call

• A delegate is a reference type used to encapsulate a method with particular parameter types

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 6

Delegate (2)using System;delegate String Foo(String x); // create a delegate class

class Test {

public static void Main() { Foo f = new Foo(ConvertToUpperCase); // create a delegate

object String answer = f("abcd"); // call the method in the // object Console.WriteLine(answer); } public static String ConvertToUpperCase(String s) { return s.ToUpper(); }}12/17/14

http://shreedhoon.com/training/aspNetTraining.php 7

Delegate (3)public class Form1 : System.Windows.Forms.Form {

private System.Windows.Forms.Button multiplyButton;

public void foo() { this.multiplyButton = new System.Windows.Forms.Button(); this.multiplyButton.Text = "Multiply";

this.multiplyButton.Click += new System.EventHandler(this.multiplyButton_Click); } private void multiplyButton_Click(object sender, System.EventArgs e)

{textBox3.Clear();string op1Str = op1.Text;string op2Str = op2.Text;

: }

Delegate reference

Delegate

Encapsulatedmethod

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 8

Multicast Delegate

using System; // From C# In A Nutshelldelegate void MethodInvoker(); // define delegate class class Test { static void Main() { // create a Test object // and call its constructor new Test(); }

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 9

Test() {

MethodInvoker m = null; m += new MethodInvoker(Foo); // overloaded += m += new MethodInvoker(Goo); // delegate holds m(); // pointers to two } // methods

m

MethodInvokervoid Foo()

void Goo()

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 10

void Foo() { Console.WriteLine("Foo"); } void Goo() { Console.WriteLine("Goo"); }}

Output:FooGoo

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 11

ASP.NET Web Forms (1)

• Web Forms bring rapid appplication development to the web

• Similar technology is available on J2EE platforms (struts, Java Server Faces)

• Drag and drop development for the web tier – write event handlers as in Windows

Forms• User interacts with the sever via a

standard browser12/17/14

http://shreedhoon.com/training/aspNetTraining.php 12

ASP.NET Web Forms (2)

• Web pages are dynamically generated

• Standard HTML is sent to the browser

• Notepad would work but Visual Studio makes life easy

• The user interface code is in an .aspx file

• The logic (C# code) is stored in a separate file (containing event handling code)

• Every .aspx file has this “code-behind” file12/17/14

http://shreedhoon.com/training/aspNetTraining.php 13

ASP.NET Web Forms (3)

• Postback events are handled on the server with an HTTP request. For example, the submit button is clicked.

• Non-postback events are not handled by the server immediately. For example, text is entered into a form or the mouse is moved.

• State is automatically added to an otherwise stateless protocol. .NET maintains the user’s session.

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 14

Web Form Life Cycle

• Complicated series of activities similar to what is found in J2EE struts and JSF

• For this class let’s just say that a lot of pre- and post-processing goes on for each web request

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 15

Creating A Web Form(1)

• Prerequisites: IIS and Front Page Server Extensions (use Internet Service Manager and right click on the web site/All Tasks/Configure Server Extensions)

• Start/Microsoft Visual Studio .NET/ New Project/Visual C#/ASP.NET Web Application/BinomialTreeWebApp

• Generated code goes into c:\Inetpub\wwwroot\BinomialTreeWebApp

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 16

Creating A Web Form(2)

• Two files generated

- The .aspx file holds the HTML

- The aspx.cs file holds the C#

• To see the C# code right click the form and select view code

• Note that you can see the design view or the HTML view (tabs on bottom)

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 17

Web Form Step-by-step(1)

(1) Start with a simple C# program – Divider.csusing System;

public class Divider {

public int divide(int a, int b) { return a / b; } public static void Main(String[] args) {

Divider s = new Divider(); Console.WriteLine(s.divide(10,5)); }}

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 18

Web Form Step-by-step(2)

(2) Compile to a .dll csc –t:library Divider.cs

(3) Run .NET New Project choose C# select .NET Web Application enter location: http://localhost/ADivider

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 19

Web Form Step-by-step(3)

(4) Paint the screen in design mode

(5) Right click to get to backing code

(6) Add a reference to the .dll with Project/Add Reference

(7) Use the class

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 20

Web Services

“The internet is evolving from a collection of isolated web sites and applications into a general communication bus for distributed applications.”

Pradeep Tapadiya, author of “.NET Programming”

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 21

ASP.NET Web Services(1)

0) Check if IIS is running by attempting to visit http://localhost

1) If it's not running click Start/Settings/Control

Panel/Add Remove Programs/

Add Remove Windows Components and

enable IIS.

2) If .NET was installed after IIS reconfigure IIS by running aspnet_regiis.exe /i from a command prompt.

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 22

ASP.NET Web Services(2)

(1) Start with a simple C# program – Divider.csusing System;

public class Divider {

public int divide(int a, int b) { return a / b; } public static void Main(String[] args) {

Divider s = new Divider(); Console.WriteLine(s.divide(10,5)); }}

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 23

ASP.NET Web Services(3)

(2) Compile to a .dll

csc –t:library Divider.cs

(3) Run .NET

New Project

choose C#

select ASP .NET Web Service

enter location: http://localhost/ADividerWS

12/17/14

http://shreedhoon.com/training/aspNetTraining.php 24

ASP.NET Web Services(4)

(4) Add a reference to the .dll with Project/Add Reference

(5) Edit the web service sample so that it provides the correct signature and calls

the divide method(6) Get the WSDL document from a browser(7) Run wsdl, compile the result, and write a

client12/17/14

.net training in gandhinagar

12/17/14 http://shreedhoon.com/training/aspNetTraining.php 25

For more visit

12/17/14 http://shreedhoon.com/training/aspNetTraining.php 26

• Website :

• www.shreedhoon.com• Blogs:• http://dotnettrainingingandhinagar.blogspot.in/• http://dotnettrainingingandhinagar.tumblr.com/

• http://shreedhoontraining.weebly.com/

• http://shreedhoontraining.weebly.com/about.html

Thank you for visiting

12/17/14 http://shreedhoon.com/training/aspNetTraining.php 27