Hey Pat -
This Topic has wandered a bit so let me provide a quick recap.
Your original complaint is that the Data Model Regeneration process does not write the Data Model DLLs to the Server\Assemblies directory. That is actually the correct behavior - the Data Models are written into the Database by the Regeneration Process. The DataModel DLLs that you have found in the AppData\Local\Temp directory structure is “lint” left over from the regeneration and compilation processing. You can see that processing in the Data Model Generator Log file you have posted.
As an AppServer Starts, the Data Model is pulled from the Database and is written to the Server\Assemblies folder. This is done so that in a configuration where multiple AppServers are used for load management, each one is correctly updated.
The Trace Flag that Bart asked you to add / enable in the AppServer.config will update the Server Log in the AppServer folder and it is that log you are interested in as it should give you information on the AppServer attempting to update the Data Model to the Server\Assemblies folder while it is starting.
DLLs referenced/used from the Server\Assemblies folder by the AppServer (W3WP) as it is running are “locked” and cannot be replaced by the AppServer as it starts if an instance of the AppServer is already running. As a result, you should follow this pattern when you are regenerating the Data Model:
Stop all Instances of the Task Agent - a running instance can keep an AppServer alive
Stop all Instances of AppServers servicing the Database
Regenerate the Data Model
Start all Instances of the AppServers for the Database
Start all Instances of the Task Agent
If the Data Models are not updated to the Server\Assemblies folder, review the AppServer Log and look for logged messages related to the AppServer start and the attempt to update the Server\Assemblies folder with the new Data Models.
If you are not able to discern anything useful from the Server Log, it is time to call Tech Support.