Forums
Forums are Read-Only. Use the new Support Center. To start a general discussion, use the General category when submitting your question.

How to deploy a XAF-based ASP.NET application

Last post 1/31/2008 9:54 AM by Gary Gibbons. 37 replies.
1 2 3 Next
Sort Posts: Previous Next
  • Dan (DevExpress)

    How to deploy a XAF-based ASP.NET application

    12/20/2007 9:04 AM
    • Top 50 Contributor
    • Joined on 4/23/2007
    • Posts 730

    Hello all

    In this post I am going to give a brief description of how to deploy an XAF-based ASP.NET application to a third-party IIS server. Later, we will use this content to prepare a more complete article in the XAF help.

    First of all, I want to specify my target:
    1. I want to have an ASP.NET application with a "logon" window (it will show UserName and Password editors) that will allow me and my clients to register and review issues.
    2. The application will be hosted on an IIS server.
    3. The application's database will be located on an MS SQL Server.
    4. IIS and SQL Server run on different machines.

    I start from a new XAF solution and introduce the "Issue" class:

        [DefaultClassOptions]
        public class Issue : XPObject
        {
            private string subject;
            private string description;
            [Persistent]
            private BasicUser createdBy;
            public override void AfterConstruction(){
                base.AfterConstruction();
                createdBy = Session.GetObjectByKey<BasicUser>(((BasicUser)SecuritySystem.CurrentUser).Oid);
            }
            public Issue(Session session) : base(session) { }
            [Size(255)]
            public string Subject { get { return subject; } set { subject = value; } }
            [Size(4096), Custom("RowCount", "10")]
            public string Description { get { return description; } set { description = value; } }
            [PersistentAlias("createdBy")]
            public BasicUser CreatedBy { get { return createdBy; } }
        }

    Then I change the authentication strategy to AuthenticationStandard in the ASP.NET application designer and write few lines of code, which create an "Administrator" user in the Updater class of my platform independent module:

        public class Updater : ModuleUpdater {
            public Updater(Session session, Version currentDBVersion) : base(session, currentDBVersion) { }
            public override void UpdateDatabaseAfterUpdateSchema() {
                base.UpdateDatabaseAfterUpdateSchema();
                BasicUser admin = Session.FindObject<BasicUser> (new BinaryOperator("UserName", "Admin"));
                if(admin == null) {
                    admin = new BasicUser(Session);
                    admin.UserName = "Admin";
                    admin.Save();
                }
            }
        }

    This is how the application looks at this stage:

         

    By default the Web Site project included in a new XAF solution is configured to run on the WebDev local server, while I need it to run on IIS. To move it to IIS, I open the context menu for the "c:\MyTracker...Web\" project in the solution tree, choose the "Publish Web Site" menu item and publish the site into the "c:\Inetpub\wwwrioot\MyTracker.Web" folder.
    Now I open this folder to check what was published: there are all the necessary files except of the files, which are registered in the GAC on my machine. This is acceptable for now, but later I will have to create a full set of files.

    Then I start Internet Explorer and try to browse to http://localhost/MyTracker.Web/Default.aspx.

    The page shows this "Configuration Error" message:

        

    This error occurs because I didn't register my published site as an IIS application in the IIS manager. So, I have to start the IIS manager and click the "Properties" context menu item for my site, click the "Create" button in the dialog ("Directory" tab, "Application Settings" group).
    Then I try again to browse to http://localhost/MyTracker.Web/Default.aspx.... Yes! I see the "Logon" page, type Admin and click the "Log On" button.

    A new "Login failed for use ":\IUSR:"." error occurs:

            

    This is a native MS SQL Server error and it means that the connection cannot be established. This happens because I forgot to make the site security settings and the connection string consistent. In XAF, by default the connection string is prepared for "Windows authentication" (the "Integrated Security=SSPI" part of the connection string). This means that the connection to the database server will be established with the permissions of the running process, which is the IIS process and it is working under the 'VSCTPJULY\IUSR_TEAM-STUDIO' user. This user is a very restricted one.

    There are two ways to solve this issue:
    - configure the operating system, IIS and browser to use current user's system credentials.
    - use a specific account to connect to the database server and include its credentials (username + password) in the connection string

    The first approach requires that each customer has his/her own account in the local network. This could be acceptable for internal use (we are using an internal XAF-based tool in this way), where the whole application environment is in one hand: IIS, database server, network, Active Directory server and so on. To follow this approach I need to return to the IIS manager, open the "Properties" window, go to the "Directory Security" tab and click the "Edit" button. In the dialog  I need to clear the "Anonymous access" check box. Then I need to change the XAF authentication to AuthenticationActiveDirectory to use user accounts.

    The second approach is better in case you don't own the environment and you are going to host your application on a third party IIS and database server, Then most likely you also will receive one database account and will not have ability to control Windows Active Directory users.

    I will prefer the second way and specify the UserName and Password in my connection string. For simplicity, I will not try to secure it in my application, though there are ways to make it secured. For details on this please see MSDN.

    Now I return to Visual Studio and move the connection string from code into the Web Site's configuration file:

     <connectionStrings>
        <add name="ConnectionString" connectionString="User ID=sa;Password=1;Pooling=false;Data Source=(local);Initial Catalog=MyTracker"/>

    and add a single line of code to read it:

      protected void Session_Start(Object sender, EventArgs e) {
       WebApplication.SetInstance(Session, new MyTrackerAspNetApplication());

       WebApplication.Instance.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;

       WebApplication.Instance.Setup();
       WebApplication.Instance.Start();
      }

    After this, I compile the Web Site and publish it again, start IE and browse to the http://localhost/MyTracker.Web/Default.aspx page.

    Voila! It's working:

          

    So, I have successfully started my locally deployed XAF ASP.NET Application.

    The next step is to deploy it to a separate server and configure a database on another  separate server (until now I didn't care about it because it was created automatically when I ran my application from Visual Studio).

    Currently I have a working application on my local IIS with an existing database. The next step is to deploy it to a separate server.

    First of all, I will collect all the necessary assemblies (all of  them are enumerated in the <assemblies> section of my Web.config file).

    About half of the list are System.XXX assemblies and the others are DevExpress.XXX assemblies. I will copy only the DevExpress.XXX assemblies into the "Bin" folder of my application:

                    <add assembly="DevExpress.ExpressApp.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.ExpressApp.Security.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.ExpressApp.Web.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.Persistent.Base.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.Persistent.BaseImpl.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.ExpressApp.Objects.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.ExpressApp.Validation.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.Xpo.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.Web.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.Data.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.ExpressApp.Images.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.Web.ASPxEditors.v7.3, Version=7.3..."/>
                    <add assembly="DevExpress.Web.ASPxGridView.v7.3, Version=7.3..."/>

    All the DevExpress.ExpressApp.XXX assemblies are installed in the "c:\Program Files\Developer Express Inc\eXpressApp Framework v7.3\Sources\DevExpress.DLL" folder. The rest of the DevExpress.XXX assemblies are DXperience assemblies and they are installed in the
    "c:\Program Files\Developer Express .NET v7.3\Sources\DevExpress.DLL" folder. Also all these assemblies are registered in GAC.

    Now I copy my site (the "c:\Inetpub\wwwroot\MyTracker.Web" folder) to the other computer  and adjust the site properties in the IIS manager. Then I change the server name from "(local)"  to "SQLSERVER" in the connection string:

        <add name="ConnectionString" connectionString="User ID=sa;Password=1;Pooling=false;Data Source=SQLSERVER;Initial Catalog=MyTracker"/>

    There is not yet any MyTracker database on my new database server and I have to create it manually before I can start the application. The XAF distribution includes a tool to create databases in situations like this. It is called "DBUpdater" and it is placed in the "c:\Program Files\Developer Express Inc\eXpressApp Framework v7.3\Tools\DBUpdater" folder during installation. It accepts parameters on the command line:

                Usage: DBUpdater.exe -silent <Path_to_app_config_file>

    I copy it to the IIS computer and start it for my web application:

          C:\Inetpub\wwwroot\MyTracker.Web\DBUpdater.v7.3.exe C:\Inetpub\wwwroot\MyTracker.Web\Web.Config

    It fails. :-\

    This is very strange. I move back to the local computer, drop the database and start the same command line: it's working, and the database is created successfully. I go to Internet Explorer and browse to "http://localhost/MyTracker.Web": the Logon  page is shown. I type my user name and click the "Log On" button. The application seems to work: I see the Issue list and I can create a new issue as well.

    It seems that I made a mistake while deploying my site. I go back to it and start debugging: and I see that a CLR exception occurs: "Could not load file or assembly 'DevExpress.ExpressApp.v7.3 :" Yes, of  course. This assembly cannot be loaded because I have not installed it into the GAC and I have not placed it near the "DBUpdater.v7.3.exe". To solve this issue I move the "DBUpdater.v7.3.exe" into the Bin folder of my application, which contains all the necessary assemblies and I try to run it again:

    C:\Inetpub\wwwroot\MyTracker.Web\bin\DBUpdater.v7.3.exe C:\Inetpub\wwwroot\MyTracker.Web\Web.Config

    It is running and it finishes with this error:

    >>>
      Updating database via connection string:
      User ID=sa;Password=1;Pooling=false;Data Source=SQLSERVER;Initial
    Catalog=MyTracker
      The database doesn't exist. It'll be created now.

      The database can't be updated:

      An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
    <<<

    Right, I forgot to change the password in the connection string. I correct it now and start the tool again with this result:

    >>>

    Developer Express Inc (R) ExpressApp Framework Database Updater.
    Version: 7.3.5.4080
    Copyright (C) Developer Express Inc 2007. All rights reserved.
    Updating database via connection string:
    User ID=sa;Password=;Pooling=false;Data Source=SQLSERVER;Initial Catalog=MyTracker

    The database doesn't exist. It'll be created now.

    ------------------------------------------------------------
    Executing module update before the database schema update:
        MyTrackerModule
        MyTrackerAspNetModule

    Executing database schema update
    Executing module update after the database schema update:

        MyTrackerModule
        MyTrackerAspNetModule

    Database update completed.

    Please disconnect all connected users and press <Enter>.
    <<<


    The database is created: I see it in the SQL Server management studio. I start Internet Explorer and browse to the http://IISServer/MyTracker.Web/ page.

    Yes! It's working and I have deployed my application.

    As you can see I had to solve some problems related to SQL Server, IIS, operating system security configurations and to the assembly management in Visual Studio. XAF helps you create an application, but it doesn't yet fully automate complex ASP.NET applications deployment scenarios.

    In this post, I have changed all computer names, login credentials and internet links. Of course you will have to use your own correct values if you want to follow the description step by step.

    Thanks, Dan.

    R&D, .NET Team Developer Express Inc.

    PS. If you wish to receive direct assistance from our Support Team, use
    Support Center at http://www.devexpress.com/Support/Center

    Thanks, Dan
    R&D, .NET Team

    P.S.
    For your guaranteed official answer within 24 h, contact our Support Team. We are here to help address your issues.
  • David Mustard

    Re: How to deploy a XAF-based ASP.NET application

    12/20/2007 10:25 AM
    • Not Ranked
    • Joined on 5/4/2007
    • Amsterdam, The Netherlands
    • Posts 16

    Thanks Dan - that's answered a whole bunch of questions waiting to be asked - I already had a couple which have been solved here.

    cheers - David

  • Gary Gibbons

    Re: How to deploy a XAF-based ASP.NET application

    12/20/2007 1:22 PM
    • Top 150 Contributor
    • Joined on 6/26/2007
    • Marysville, Washington
    • Posts 126

    Hi Dan, this is great, thanks!  Very helpful in resolving some of the connections issues to remote servers.

    I'm curious about using VS's publish feature.  Doesn't that also compile the site as well, which in turn means any changes later to the web app would need to be recompiled and the entire solution published again?

    I ran into this issue when using the publish feature for a typical asp.net web site, and it seems the documentation even warns of such an issue. I built a web app in asp.net, and published it. However, once the site was compiled in the "publish web site" function, I could no longer make updates via ftp, and had to open an instance of the app that hadn't been compiled and published, make the intended changes, then published the new site with the changes made.

     Any idea whether this could interfere with a deployment?

     Thanks for the "how to"!

    Gary Gibbons
    www.pugetcustompc.com
  • Dan (DevExpress)

    Re: How to deploy a XAF-based ASP.NET application

    12/21/2007 2:15 AM
    • Top 50 Contributor
    • Joined on 4/23/2007
    • Posts 730
    Hi Gary,
     
    Your question requires me to review ASP.NET deployment scenarios and their benefits/restrictions. It seems that there may be some pitfalls.
    Your question is on my to-do list, and I will reply to you once I have an answer.

    --
    Thanks, Dan
    R&D, .NET Team Developer Express Inc.
     
    PS. If you wish to receive direct assistance from our Support Team, use
    Support Center at http://www.devexpress.com/Support/Center
    Thanks, Dan
    R&D, .NET Team

    P.S.
    For your guaranteed official answer within 24 h, contact our Support Team. We are here to help address your issues.
  • drew..

    Re: How to deploy a XAF-based ASP.NET application

    1/10/2008 9:50 PM
    • Top 25 Contributor
    • Joined on 5/7/2007
    • Victoria, BC Canada
    • Posts 1,274

    speaking as a vet who has deployed many many web apps, and has seldom found an easy deploy (especially with a new framework..) . i wish somebody could find a super utility app that can simply walk your app and somehow find every single thing needed to make it work remotely. I would pay dearly for that.

    I feel i have done everything required, first ensuring my local dev web app was reaching and editing the remote db. After uploadingn everything, all the remote server shows is:

      

    Application Error

    We are currently unable to serve your request: MyUrl/Default.aspx

    We apologize, but an error occurred and your request could not be completed.

     

     

    This is very hard to debug.. ☻ Any thoughts or pointers?

  • Rinat Abdullin

    Re: How to deploy a XAF-based ASP.NET application

    1/11/2008 2:55 AM
    • Top 150 Contributor
    • Joined on 12/26/2007
    • Russia, Ufa
    • Posts 148
    Hello Drew,

    Does the remote server have some specific code access restrictions?

    PS: The closest thing to this tool that I've seen was the simple self-validation
    mechanism employed by some developers.

    Basically important components/services in the app had implemented ITestable
    to check if they are configured to work correctly (i.e.: FileStore - checked
    that it could write to the filepath, EmailSender - tried to do SMPT, Reflection
    subsytem - performed a couple of CAS checks). And then the single verify.aspx
    page invoked all the ITestable's from the IoC and printed out the results
    if necessary.

    With best regards,
    Rinat Abdullin
    xLim 2 - open XAF-like architecture

    > speaking as a vet who has deployed many many web apps, and has seldom
    > found an easy deploy (especially with a new framework..) . i wish
    > somebody could find a super utility app that can simply walk your app
    > and somehow find every single thing needed to make it work remotely. I
    > would pay dearly for that.
    >
    > I feel i have done everything required, first ensuring my local dev
    > web app was reaching and editing the remote db. After uploadingn
    > everything, all the remote server shows is:
    >
    > Application Error
    >
    > We are currently unable to serve your request: MyUrl/Default.aspx
    >
    > We apologize, but an error occurred and your request could not be
    > completed.
    >
    > This is very hard to debug.. Б≤╩ Any thoughts or pointers?
    >
    Rinat Abdullin | Blog | +7 917 4613826
  • Dan (DevExpress)

    Re: How to deploy a XAF-based ASP.NET application

    1/11/2008 3:16 AM
    • Top 50 Contributor
    • Joined on 4/23/2007
    • Posts 730
    Hello Drew,
     
    Could you post a log file?
    It contains more debug information and can help us understand the issue.

    --
    Thanks, Dan
    R&D, .NET Team Developer Express Inc.
     
    PS. If you wish to receive direct assistance from our Support Team, use
    Support Center at http://www.devexpress.com/Support/Center
    Thanks, Dan
    R&D, .NET Team

    P.S.
    For your guaranteed official answer within 24 h, contact our Support Team. We are here to help address your issues.
  • drew..

    Re: How to deploy a XAF-based ASP.NET application

    1/12/2008 4:25 PM
    • Top 25 Contributor
    • Joined on 5/7/2007
    • Victoria, BC Canada
    • Posts 1,274

    no code restrictions that i am aware of.. and  i sent the log file yesterday.. it was tough to get as ftp could not touch it as it was locked. Is this a byproduct of XAF? I finally got it, by way of DotNetPanel's file manager, by creating a copy and downloading the copy..  I hope it sheds light on this.

    I wonder if i just have the wrong bits in the bin?

  • Rinat Abdullin

    Re: How to deploy a XAF-based ASP.NET application

    1/12/2008 5:09 PM
    • Top 150 Contributor
    • Joined on 12/26/2007
    • Russia, Ufa
    • Posts 148
    Hello Drew,

    Well, the only consistent way to figure that out by yourself is to use clean
    integration server for auto-building, deployment and testing.

    With best regards,
    Rinat Abdullin
    xLim 2 - open XAF-like architecture

    > no code restrictions that i am aware of.. and i sent the log file
    > yesterday.. it was tough to get as ftp could not touch it as it was
    > locked. Is this a byproduct of XAF? I finally got it, by way of
    > DotNetPanel's file manager, by creating a copy and downloading the
    > copy.. I hope it sheds light on this.
    >
    > I wonder if i just have the wrong bits in the bin?
    >
    Rinat Abdullin | Blog | +7 917 4613826
  • drew..

    Re: How to deploy a XAF-based ASP.NET application

    1/15/2008 1:11 AM
    • Top 25 Contributor
    • Joined on 5/7/2007
    • Victoria, BC Canada
    • Posts 1,274

    Hi Rinat, i am not sure what you mean by clean integration server...

     i went back to basics and built an empty shell of an asp.net xaf app, accessing only a db on my remote server. i uploaded in the traditional way with ftp, after setting conn strings etc. Worked fine. Then i added piece by piece what i wanted. Got security working fine. Got one domain object fine. But.. here is the kicker. When i dropped in an asp.net reporting module, and uploaded all the required dlls, plus following the same techniques i had already used.. i get back to the same annoying helpless error message. grrrrr..Angry . I tested by removing the aspnet reports, rebuilt, uploaded and *did note remove* any reporting dll files. And i got my simpler app back, running fine. I repeated this, and boom barfs-ville. Now this works fine locally.

    I recently noted that the asp.net framework barfs if there is no domain object. Perhaps the fact that there is no report, but just the shell, perhaps this is the issue? gosh i hope so, i have wasted too much time on this, and asp.net reporting is critical..  thanks for listening, drew..

  • Rinat Abdullin

    Re: How to deploy a XAF-based ASP.NET application

    1/15/2008 3:56 AM
    • Top 150 Contributor
    • Joined on 12/26/2007
    • Russia, Ufa
    • Posts 148
    Hello Drew,

    I admire your persistence with this issue.

    "Clean integration server" simply means "dedicated automated build and testing
    machine that has CruiseControl.NET running on it and no complex developer
    dependencies in the GAC or messed up OS settings". Or you can use virtual
    machines for that purpose. This helps to detect the build and deployment
    dependencies that could suddenly affect the production deployment.

    Unless you get the response from DX based on the log that you've submitted
    to them, the only other way to find out the problem is to get it rounded
    yourself. However your situation is hard, since you have to build-upload-launch
    every time and you do not have any diagnostic access to the logs on the remote
    server.

    The solution is simple - just move the deployment to similar environment
    where you can get them. That's how I've dealt with the similar problem related
    to the assembly loading problem on CrystalTech ASP.NET hosting (one of the
    xLim implementations that has Web built-in to the Server has been throwing
    wild errors)

    1) created clean virtual machine with the Windows 2003 and ASP.NET
    2) manually transferred all code access security settings to the web application
    (trust level settings, most web-hosters describe them somewhere in a FAQ
    or per request)
    3) launched the app there
    4) got the error (well, actually it took me some time to get the exact same
    error, but it was worth it)
    5) started checking the Event Log, fusion log, debug messages.

    After that it was trivial.

    With best regards,
    Rinat Abdullin
    xLim 2 - open XAF-like architecture
    Rinat Abdullin | Blog | +7 917 4613826
  • drew..

    Re: How to deploy a XAF-based ASP.NET application

    1/15/2008 1:58 PM
    • Top 25 Contributor
    • Joined on 5/7/2007
    • Victoria, BC Canada
    • Posts 1,274

    thanks for the CruiseControl.Net tip, i will look into that when time permits, interesting concept. I am now walking the process of grabbing the log file after every failure to determine what DLL is missing (and here i thought web.config listed all the required dll's, hmmm..). Makes me wish that the load process was more Vista-like, where it prewalks requirements before copy processes etc. It sure would save time if we could get a laundry list of missing dll's at one time, rather than shutdown at first error.

    @DX: can you folks release the lock on the log file after startup/error event? Makes it a pain to try and retrieve when it is locked. thanks.

  • drew..

    Re: How to deploy a XAF-based ASP.NET application

    1/15/2008 2:09 PM
    • Top 25 Contributor
    • Joined on 5/7/2007
    • Victoria, BC Canada
    • Posts 1,274

    FINALLY. There were 2 missing DLL's to which there were no reference in the web.config file. I am not in the habit of dropping every single DLL possible, so this makes it a tad harder to resolve. So for reference, anyone wanting to have a xaf web app with security, reports & have it work, drop these DLL's (as of jan15-2008), where i have bolded the two DLL's that were not referenced within web.config.:

     DevExpress.Data.v7.3.dII

     DevExpress.ExpressAppimages.v73.dII

     DevExpress.ExpressApp,Objects.v73.dII

     DevExpress.ExpressApp.Reports.v7.3.dII

     DevExpress.ExpressApp.Reports.Web.vl.3dII

    DevExpress.ExpressApp.Security.v7.3.dII

     DevExpress.ExpressApp.v7.3.dII

     DevExpress.ExpressAppValidation.v73.dII

     DevExpress.ExpressApp,Web.v7.3.dII

     DevExpress.Persistent.Base.v7.3.dII

     DevExpress.Persistent.BaselmpL.v73.dII

    DevExpress.Utils.v73.dII

     DevExpress.Web.ASPxEditors,v7.3.dfl

     DevExpress.WebASPxGridVeew.v73.dII

     DevExpress.Web.v73.dII

     DevExpress.Xpo.v73.dII

    DevExpress.XtraPrinting.v73.dII

     DevExpressXtrakeports,v7.3.dII

    DevExpress.XtraReports.v7.3.Web.dII

     testxaf.Module.dII

    testxaf.Module.Web.dII

     

    *ps: i created this list by taking a screenshot, pasting into OneNote, then used text recognition to create pastable text... hopefully it worked properly ☻

    **pps: the last two modules are just my app modules, your name will of course be different.

  • Gary Gibbons

    Re: How to deploy a XAF-based ASP.NET application

    1/15/2008 3:27 PM
    • Top 150 Contributor
    • Joined on 6/26/2007
    • Marysville, Washington
    • Posts 126

    Hey Drew, thanks for the effort and info - I'll lock this into memory.

    I would characterise your work as "combat developing", as it is a battle of will to break through the frustration and get things done!

    I find it surprising the printing and utility libraries weren't referenced when you originally set up printer controls, but everything XAF surprises me at some time :>).

    Now that your app is published, I would be interested to know how a conversion goes if you find yourself upgrading the app to the next XAF iteration.

    Anyway, thanks for your information!

     Happy Times!

    --Gary

    Gary Gibbons
    www.pugetcustompc.com
  • drew..

    Re: How to deploy a XAF-based ASP.NET application

    1/15/2008 4:36 PM
    • Top 25 Contributor
    • Joined on 5/7/2007
    • Victoria, BC Canada
    • Posts 1,274

    Thanks Gary.. after working through various suite (some less sweet) frameworks, i have learned that getting the remote app running is seemingly the biggest hurdle. i am trying to keep notes, but it is hard to stop and write when the brain is in overdrive. I will do my best to work up a minor doc for this, as i am sure it can help others. I must admit, after finally, finally getting a simple asp.net report running that i was very very very surprised to see a simple pop-up with no toolbar, no paging, no zooming etc. Given that XtraReports has been out for so long, hopefully i just missed something in this journey? i will scour the docs, but my clients surely won't be happy to see this little pop-up, after being used to a few other tools...  hint hint ☻

     

1 2 3 Next
More from DevExpress
Live Chat
Have a pre-sales question?
Need assistance with your evaluation?
We are here to help.
Chat is one of the many ways you can contact members of the DevExpress Team. We are available Monday-Friday between 8:30am and 5:00pm Pacific Time.
If you need additional product information, require pre-sales assistance, or want help with your order, write to us at info@devexpress.com or call us at
+1 (818) 844-3383.