turton - PowerPoint PPT Presentation

About This Presentation
Title:

turton

Description:

this is a test of the emergency broadcast system – PowerPoint PPT presentation

Number of Views:53
Slides: 25
Provided by: akmaru
Tags:

less

Transcript and Presenter's Notes

Title: turton


1
ASP.NETFile Upload, Exception Handling
  • David Turton
  • Conestoga College
  • Institute of Technology and Advanced Learning
  • http//www.conestogac.on.ca/dturton
  • Doon 1D17, x 3610

2
Objectives
  • File Upload
  • Upload files to a server
  • Exception Handling
  • Create exceptions
  • Use Try-Catch-Finally construct
  • To intercept exceptions (abends)

3
File Upload
4
File Upload
  • Allows users to upload a file to server
  • Browse button included
  • To select local file to be uploaded
  • You control destination on server
  • User presents a file
  • you code target path filename
  • Individual user rights are not relevant
  • It's ASPNET user doing the writing

5
Text box for name of file at server (or default
to source file name)
Button to enact upload
Could provide a text box to input the target
directory or just default it by application, user
name, etc.
6
Uploading Files to NTFSwith IIS user ASPNET
needs permissions
  • Windows Explorer
  • Tools ? Options
  • "View" tab
  • Clear Use Simple File Sharing (Recommended)"
  • Security tab becomes available
  • Gives access to NTFS permissions
  • Give user ASPNET modify rights
  • In folder properties, Security tab

7
Allow ASPNET user to change files
properties
8
CCode to enact upload
  • Private void btnUpload_Click(ByVal sender As
  • try
  • if (txtServerName.Text null
    txtServerName.Text.Trim() "")
  • lblError.Text "Error need file-name for
    server"
  • else
  • String uploadDir Server.MapPath("/images")
  • upldSource.PostedFile.SaveAs(uploadDir _at_"\"
    txtServerName.Text)
  • catch (Exception ex)
  • lblMessage.Text "exception
    thrown " ex.Message

Get actual path to the site-relative path/images
9
VBCode to enact upload
  • Protected Sub btnUpload_Click(ByVal sender As
  • Try
  • If (txtServerName.Text Is Nothing OrElse
    txtServerName.Text.Trim() "")
  • lblError.Text "Error need file-name for
    server"
  • else
  • Dim uploadDir As string Server.MapPath("/i
    mages")
  • upldSource.PostedFile.SaveAs(uploadDir "\"
    txtServerName.Text)
  • End If
  • Catch ex As Exception
  • lblMessage.Text "exception thrown
    " ex.Message
  • End Try

Get actual path to the site-relative path/images
10
Server.MapPath("/images")
  • Returns actual physical path on server
  • Starting from the drive letter
  • Parameter is assumed to be a relative address
  • Based on 1st character
  • / means relative to the web site
  • All else assumed relative to current web page
  • "/" or "\" as a 1st character is invalid
  • Will double "\" between path parameter

11
Properties of Interestassume browse control is
called "upldSource"
  • upldSource.PostedFile.FileName
  • Returns source file-name and path
  • UpldSource.FileName
  • Returns source file-name extension, no path
  • upldSource.PostedFile.ContentLength
  • Length of file being uploaded check for zero
    length
  • upldSource.PostedFile.ContentType
  • Type of file being uploaded, as general/specific
    pair image/jpg
  • File extension not always indicative of file type
    (in Linux and UNIX)
  • System.IO.Path.GetFileName(upldSource.PostedFile.F
    ileName)
  • Returns input file-name extension (no path)
  • System.IO.Path.GetFileExtension(upldSource.PostedF
    ile.FileName)
  • Returns input file-name extension only
  • System.IO.Path.GetDirectoryName(upldSource
    PostedFile.FileName)
  • Returns input file's source path

12
Exception Handling
13
Exception Handling (simple)
  • For commands likely to get an exception (abend)
  • Put within a Try construct
  • Use Catch construct to interpret the error
  • Usually, just display the error text ex.Message
  • Exceptions outside a Try-Catch construct
  • Will abend program kick user off your site

try commands to upload file, modify
database, etc. things to do if it works
catch (Exception ex) lblMessage.Text
"Here is the exceptionltbr /gt"
ex.Message finally things to do
regardless
14
Try Catch - Finally
  • Commands in Try are executed in sequence
  • On an exception (error)
  • Processing jumps to Catch code
  • Remaining Try code is discarded
  • Exception or not
  • Commands in Finally block are executed
  • Code following Try-Catch-Finally is executed
  • Unless Try or Catch execute a Return
  • (or Throw an exception back to calling program)
  • Even if the code says to leave the procedure,
    Finally is executed before it does so.
  • If you have a blank Catch block
  • You're hiding the abend and processing will
    continue
  • You'll lose marks on assignments

15
MultiView Wizard Controls
16
New with ASP.NET 3.5MultiView Wizard Controls
  • Draft a single form
  • Divide it into sections
  • Present one section at a time
  • Fields on all sections
  • Available at all times
  • MultiView
  • You control
  • .ActiveViewIndex
  • Navigation buttons
  • Content of each section
  • Wizard
  • Generates
  • Previous/Next/Finish buttons
  • Navigation menu
  • You control
  • Content of each section

17
Assigning buttons to same handlerCreate one or
two button handlers, rename them (PanelNext,
PanelBack)Assign pertinent handler to all Next
and Back buttons
18
MultiView ControlView-to-view navigation code
// on initial load, display the first
panel protected void Page_Load(object sender,
EventArgs e) if (!IsPostBack)
viewSurvey.ActiveViewIndex 0 // all next
buttons just increment the view index protected
void PanelNext(object sender, EventArgs
e) viewSurvey.ActiveViewIndex // all back
buttons decrement the view index protected void
PanelBack(object sender, EventArgs
e) viewSurvey.ActiveViewIndex--
19
Wizard ControlMultiple-template formsYou
provide content ? it provides navigation
You provide content on each panel, the wizard
provides menu on left Next/Prior buttons
20
Added by wizard
21
ltaspWizardStepgt attributes(some)
  • Title"xxx"
  • Title of step shown in hyperlink navigation
  • AllowReturn"False"
  • If true (default), users can come back to this
    step
  • If false, users can't, but can jump over it
  • StepType"xxx"
  • "Auto" default
  • "Start" only Next button
  • "Step" Next Previous
  • "Finish" only Finish button
  • "Complete" doesn't appear in hyperlink menu

22
Wizard Events
  • Xxx_NextButtonClick
  • Look at e.NextStepIndex
  • Next step to be displayed
  • Can use input fields to decide whether to jump
    this step or not

23
Wizard Step event OnActivateuse to preload step
with data from other steps,decide whether to do
step, etc.
24
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com