# Advanced Migration Topics
This guide covers advanced scenarios and edge cases that may require additional configuration when migrating to ElectronNET.Core.
## Custom ASP.NET Port Configuration
### Port Configuration Changes
**Previous Approach:**
Specifying the WebPort in `electron.manifest.json` is no longer supported because the ASP.NET-first launch mode makes this timing-dependent.
**New Approach:**
Configure custom ASP.NET ports through MSBuild metadata:
```xml
```
**Usage in Code:**
```csharp
// Access configured ports at runtime
var port = int.Parse(Electron.App.GetEnvironmentVariable("AspNetHttpPort") ?? "5000");
```
## Custom ElectronHostHook Configuration
### TypeScript and Node.js Updates
**Update package.json:**
```json
{
"devDependencies": {
"eslint": "^9.37.0",
"@types/node": "^22.18",
"typescript": "^5.9.3"
},
"dependencies": {
"archiver-utils": "^2.1.0",
"socket.io": "^4.8.1",
"exceljs": "^1.10.0"
}
}
```
**Update Project File:**
```xml
commonjs
true
ElectronHostHook/tsconfig.json
```
### Integration Benefits
- **Modern TypeScript** - Latest language features and better type checking
- **Updated Node.js Types** - Compatibility with Node.js 22.x APIs
- **ESLint Integration** - Better code quality and consistency
- **MSBuild Compilation** - Integrated with Visual Studio build process
## Troubleshooting Advanced Scenarios
### Multi-Project Solutions
When using ElectronNET.Core in multi-project solutions:
1. **Install ElectronNET.Core.Api** in class library projects
2. **Install ElectronNET.Core** only in the startup project
3. **Share configuration** through project references or shared files
### Custom Build Processes
For advanced build customization:
```xml
custom\output\path
custom\node_modules
```
### Environment-Specific Configuration
Handle different environments with conditional configuration:
```xml
Development
Production
```
## Next Steps
- **[Migration Guide](Migration-Guide.md)** - Complete migration process
- **[What's New?](What's-New.md)** - Overview of all ElectronNET.Core features
- **[Getting Started](../GettingStarted/ASP.Net.md)** - Development workflows