/// <summary>Main</summary>
  public static void Main
  ( 
   string[] argv
  )
  {
   Boolean                       booleanParseCommandLineArguments  =  false;
   string                        exceptionMessage                  =  null;     
   string                        filenameApplication               =  System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase;
   UtilityFileUploadArgument     utilityFileUploadArgument         =  null;
   
   FileUpload                    fileUploadSource                  =  null;
   
   utilityFileUploadArgument = new UtilityFileUploadArgument();
   
   booleanParseCommandLineArguments =  UtilityParseCommandLineArgument.ParseCommandLineArguments
   ( 
    argv, 
    utilityFileUploadArgument
   );

   if ( booleanParseCommandLineArguments == false )
   {
    // error encountered in arguments. Display usage message
    System.Console.Write
    (
     UtilityParseCommandLineArgument.CommandLineArgumentsUsage( typeof ( UtilityFileUploadArgument ) )
    );
    return;
   }//if ( booleanParseCommandLineArguments  == false )

   #if (DEBUG)
    System.Console.WriteLine
    (
     "Filename Application: {0}",
     filenameApplication
    );
   #endif

   #if (DEBUG)
    System.Console.WriteLine
    (
     "Argument FilenameSource: {0} | FilenameTarget: {1}",
     utilityFileUploadArgument.filenameSource,
     utilityFileUploadArgument.filenameTarget
    );
   #endif

   fileUploadSource = new FileUpload();
   
   FileUploadSaveAs
   (
    ref utilityFileUploadArgument,
    ref exceptionMessage,
    ref fileUploadSource
   );
   
  }//Main  
  }//public String FilenameTarget

  /// <summary>ButtonSubmit_Click().</summary>
  public void ButtonSubmit_Click
  (
   Object sender, 
   EventArgs e
  )
  {

   String               exceptionMessage                    =  null;

   String               filenameSource                      =  null;
   String               filenameTarget                      =  null;

   UtilityFileUploadArgument   utilityFileUploadArgument    =  null;
   
   filenameSource                                           =  FilenameSource;
   filenameTarget                                           =  FilenameTarget;

   /*
   if( sender == ButtonSubmit )
   {
    Response.Write ( "ButtonSubmit" );
    Feedback = "ButtonSubmit";
   }
   */

   utilityFileUploadArgument = new UtilityFileUploadArgument
   (
    filenameSource,
    filenameTarget
   );

   UtilityFileUpload.FileUploadSaveAs
   (
    ref utilityFileUploadArgument,
    ref exceptionMessage,
    ref FileUploadSource
   );

   Feedback = exceptionMessage;
   
  }//public void ButtonSubmit_Click()
  }//Main  

  /// <summary>FileUploadSaveAs</summary>
  public static void FileUploadSaveAs
  (
   ref UtilityFileUploadArgument  utilityFileUploadArgument,
   ref string                     exceptionMessage,
   ref FileUpload                 fileUploadSource
  )
  {
   HttpContext       httpContext  =  HttpContext.Current;
   
   try
   {
    if ( !fileUploadSource.HasFile )
    {
     return;
    }//if ( !fileUploadSource.HasFile )
         	 
    fileUploadSource.SaveAs( utilityFileUploadArgument.filenameTarget );
    
   }//try
   catch ( Exception exception )
   {
    exceptionMessage = "Exception: " + exception.Message;
   }//catch ( Exception exception )

   if ( exceptionMessage != null )
   {
    if ( httpContext == null )
    {
     System.Console.WriteLine( exceptionMessage );
    }//if ( httpContext == null )
    else
    {
     //httpContext.Response.Write( exceptionMessage );
    }//else 
   }//if ( exceptionMessage != null )
     
  }//public static void FileUploadSaveAs()