Link to home
Start Free TrialLog in
Avatar of tingleweb
tinglewebFlag for United Kingdom of Great Britain and Northern Ireland

asked on

Changing an aspx file not to use a compiled dll

Sorry in advance.  I am a newbie...

I have an aspx file fhe page I am working on (confirmorder.aspx) which was previously using a compiled DLL.

I dont have access to all the compiled code but I do have access to the aspx.vb file for this page. (confirmorder.aspx.vb).
So far II have basically removed the inherits and added an Assembly directive so it will use the compiled DLL which contains other variables used on the page.  

The developer who created the compiled DLL (who isnt available) told me to :
use this directive <%@ Assembly Name="BoxCommerce" %> below the @ Page directive, public partial class and inherits are not required and remove handles from page_load.

How can I force the aspx page to use the aspx.vb instead of the compiled VB please?
At present, the page throws an error because the value is stored in the aspx.vb file which isnt being read for some reason...?:
BC30451: Name 'basketSubTotal' is not declared.

Thanks
*********BEFORE, the top of the aspx page was:*********

<%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="~/main.Master" CodeBehind="confirmorder.aspx.vb" Inherits="Test.confirmorder" EnableViewState="false" 
    title="Test - Confirm Order" %>

*********Now, I've changed the aspx page to read (at the top):*********

<%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="~/main.Master" CodeBehind="confirmorder.aspx.vb" EnableViewState="false" 
    title="Test - Confirm Order" %>
<%@ Assembly Name="TestCommerce" %>    

*********BEFORE, the top of the aspx.vb file was:*********

Imports Dovetail.Realex.Realauth

Partial Public Class confirmorder
    Inherits System.Web.UI.Page
    Protected basketSubTotal As String = FormatNumber(0, 2)
    Protected total As String = FormatNumber(0, 2)
    Protected deliveryOption As String = ""
    Protected deliveryPrice2 As String = "0.00" 'additional delivery charges
    Protected deliveryPrice1 As String = "0.00" 'productshipping
    Private dtShopper As DataTable = Nothing
    Private orderID As Integer = 0

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load


*********I removed some of it so it read:*********

Imports Dovetail.Realex.Realauth

Partial Public Class confirmorder
    Inherits System.Web.UI.Page
    Protected basketSubTotal As String = FormatNumber(0, 2)
    Protected total As String = FormatNumber(0, 2)
    Protected deliveryOption As String = ""
    Protected deliveryPrice2 As String = "0.00" 'additional delivery charges
    Protected deliveryPrice1 As String = "0.00" 'productshipping
    Private dtShopper As DataTable = Nothing
    Private orderID As Integer = 0

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

Imports Dovetail.Realex.Realauth

    Protected basketSubTotal As String = FormatNumber(0, 2)
    Protected total As String = FormatNumber(0, 2)
    Protected deliveryOption As String = ""
    Protected deliveryPrice2 As String = "0.00" 'additional delivery charges
    Protected deliveryPrice1 As String = "0.00" 'productshipping
    Private dtShopper As DataTable = Nothing
    Private orderID As Integer = 0

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

Open in new window

Avatar of Paul MacDonald
Paul MacDonald
Flag of United States of America image

I believe you need something like:

<%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="~/main.Master" CodeBehind="confirmorder.aspx.vb" EnableViewState="false" CodeFile="confirmorder.aspx.vb" Inherits="class_name_goes_here" title="Test - Confirm Order" %>
 

Avatar of tingleweb

ASKER

Thanks Paul
My comments below...

At the moment, the error is :

Type 'DataTable' is not defined.
***********Should my aspx page now read at the top:***********

<%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="~/main.Master" CodeFile="confirmorder.aspx.vb" Inherits="confirmorder" EnableViewState="false" title="Test - Confirm Order" %>
<%@ Assembly Name="TestCommerce" %> 

***********and my aspx.vb now read at the top:***********


Partial Public Class confirmorder
    Protected basketSubTotal As String = FormatNumber(0, 2)
    Protected total As String = FormatNumber(0, 2)
    Protected deliveryOption As String = ""
    Protected deliveryPrice2 As String = "0.00" 'additional delivery charges
    Protected deliveryPrice1 As String = "0.00" 'productshipping
    Private dtShopper As DataTable = Nothing
    Private orderID As Integer = 0

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

Open in new window

now it says


Compiler Error Message: BC30456: 'Title' is not a member of 'ASP.confirmorder_aspx'.
Remove the title value:

<%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="~/main.Master" CodeFile="confirmorder.aspx.vb" Inherits="confirmorder" EnableViewState="false" %>

As to the datatable, I can't comment because I don't see what it's referring to.  It must be something in the codebehind.
It now says

Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: ASPNET: Make sure that the class defined in this code file matches the 'inherits' attribute, and that it extends the correct base class (e.g. Page or UserControl).

Source Error:

Line 1:  
Line 2:  Partial Public Class confirmorder
Line 3:      Protected basketSubTotal As String = FormatNumber(0, 2)
ASKER CERTIFIED SOLUTION
Avatar of Paul MacDonald
Paul MacDonald
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial