Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Instead of a listing with complicated syntactic variables, here
is an illustration of what is which, with the PhoneBook project
as example:

Placeholders
Note

The placeholder entries are key-value pairs of the form

Code Block

<replace from="$key$" to="value" />

You might be tempted to nest such declarations, as in

Code Block

<replace from="$RemotionAssembly$" to="\PhoneBook\Remotion\net-3.5\bin\Debug" />
<!-- RemotionAssembly and WxeEngine are always the same, so... !-->
<replace from="$WebClientAssembly$" to="$RemotionAssembly$" />

However, this won't work. uigen.exe can't resolve placeholders in
value strings. This is the reason why it can't handle relative paths, by
the way.

  • $ReferencesDir$: the name of the directory in
    the web application project for storing the
    references to the domain- and re-motion assemblies
    By convention, this node is named "References" in
    Visual Studio, so that's probably what you will use
    for the placeholder value.
  • $DomainProjectName$: the name of the directory with the
    domain project in Visual Studio (not to be confused with the
    namespace)
  • $DomainProjectAssembly$: The name of the domain assembly
    that shall be inspected by uigen.exe (i.e. where to find
    the domain object classes, without ".dll")
  • $WebProjectName$: the name of the directory with the web application
    project in Visual Studio. (generated by uigen.exe.)
  • $WebClientAssembly$: the name of the assembly that is the
    target of the web project's target. (i.e. the .dll-product showing up
    in bin\Debug or bin\Release after a compile and link).
  • $RemotionAssembly$: a better name would be $RemotionAssemblyDirectories.
    It is the path to the bin\Debug or bin\Release directory
    where the re-motion framework's binary assemblies can be found.
  • $WxeEngine$: where the re-call code generator WxeGen.exe can
    be found. This has been introduced for developers who might want to
    use an alternative WxeGen.exe. Since WxeGen.exe is part of
    the re-motion framework, its location is always the same as that
    of the other re-motion assemblies (see previous item, $RemotionAssembly$.
  • $STRONG_SUPPLEMENT$: a VERY important placeholder for specifying the
    framework's version. re-motion, and by extension, uigen.exe insist
    on complete strong names.
    • NOT ENOUGH: Remotion.dll
    • USE STRONG NAME: Remotion.dll, Version=1.13.6.2, Culture=neutral, PublicKeyToken=fee00910d6e5f53b
  • $DomainProjectGuid$: The project GUID you find in the domain project's
    .csproj file. This GUID is included in the web project's (web client's)
    .csproj file, but not checked by anyone. Use a syntactically valid Guid,
    nobody will bother you.
  • $USER_APPNAME$: a string with the display name of the
    generated web application
  • $USER_DEFAULT_ASPX_TOPIC$: a string to be shown on the default.aspx
    page showing the Start link to aid the user (the string
    usually says "To start the application, just click 'Start'")
    This is harder to explain than to demonstrate. Click here and
    you will easily understand it: FIXME
  • $USER_DEFAULT_STARTPAGES$: an invocation of the re-call
    function to be called when the user clicks "Start" (or equivalent).
    (try it out with the online PhoneBook)
  • $USER_STORAGEPROVIDER$: the name of the storage-provider, as
    declared in the web project's Web.config file (generated by
    uigen.exe)
  • $USER_CATALOGNAME$: the name of the database (and the
    identifier for the connection string) in the web project's
    Web.config file (generated by uigen.exe) – this should be
    the same as specified for dbschema.exe's App.Config,
    explained here: using dbschema.exe
  • $USER_STATUSBAR$: legacy placeholder, always set to "yes"
  • $USER_CLASSIC_APPSTYLE$: legacy placeholder, always set to "no"

...