# Migrating From .NET Framework to .NET

> Migrate a WPF app with TX Spell .NET from .NET Framework to .NET 8: swap TXSpell.WPF.dll for the NuGet package, drop licenses.licx lines, keep the XAML.

- **Product:** TX Spell .NET for WPF
- **Section:** Documentation
- **Kind:** Topic
- **Path:** TX Spell .NET for WPF > Installation Guide > Upgrade Guide > Migrating From .NET Framework to .NET
- **725 words**
- **Web URL:** https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/upgrading/from-dotnet-framework/
- **LLMs URL:** https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/upgrading/from-dotnet-framework/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/upgrading/from-dotnet-framework/llms-full.txt

---

When a WPF application moves from the .NET Framework to .NET 8 or higher, the code that uses TX Spell .NET stays the same: the assemblies have the same names, and the classes the same namespaces. What changes is how TX Spell .NET reaches the project. The references to the assemblies of the installation give way to a NuGet package, which also brings the license and the language data.

### What Changes

|  | .NET Framework | .NET 8 or higher |
|---|---|---|
| Assemblies | *TXSpell.dll* and *TXSpell.WPF.dll*, referenced from the *Assembly* folder of the installation | The package `TXTextControl.TXSpell.WPF.SDK` |
| License | An entry in *licenses.licx* | The license file *txspell.wpf.license*, which the package embeds into your assembly |
| Language data | Found below the *Assembly* folder while you develop; shipped by you | Copied into the output and publish folders by the package |
| XAML | `xmlns:spell` mapping to *TXSpell.WPF* | The same mapping, unchanged |

### Convert the Project

Convert the project itself first, for example with the .NET Upgrade Assistant of Microsoft. It doesn't convert the references to Text Control assemblies, which you replace in the next steps. When the application uses TX Text Control as well, follow the upgrade guide of TX Text Control for its part.

### Replace the References With the Package

1. Remove the references to *TXSpell.dll* and *TXSpell.WPF.dll* from the project.
2. Choose **Project** > **Manage NuGet Packages...** and select **Text Control Offline Packages** in the **Package source** list.
3. If the application uses TX Text Control, install its package first. Then install `TXTextControl.TXSpell.WPF.SDK`.
4. Remove the lines of TX Spell .NET from *licenses.licx*. If no other lines remain, delete the file.
5. Rebuild the application and test it.

Code that checks text without a user interface, for example a class library used by a service, takes the package `TXTextControl.TXSpell.Core.SDK` instead; see [Checking Text in Code](https://docs.textcontrol.com/tx-spell-dotnet-wpf/getting-started/in-code/llms-full.txt).

### Language Data After the Move

The package copies the US English dictionary, hyphenation list, thesaurus and language recognition data into the output folder. Dictionaries of other languages that your application ships go into the folders *Dictionaries*, *HyphenationLists* and *SynonymLists* of the project, with **Copy to Output Directory** set, as [Installing Dictionaries and Language Data](https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/language-data/llms-full.txt) describes. If the application sets the folder properties, such as [DictionariesDirectoryPath](https://docs.textcontrol.com/tx-spell-dotnet-wpf/reference/txtextcontrol-wpf-proofing/txspellchecker/dictionariesdirectorypath-property/llms-full.txt), it keeps working with the folders you set.

### Publish the Application

Publish the application with **Publish** in Visual Studio; the package copies the files TX Spell .NET needs. With TX Text Control, select a target runtime, such as `win-x64`, in the publish profile. Without TX Text Control, TX Spell .NET needs no target runtime. [Windows Versions](https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/requirements/windows/#publishing-with-and-without-tx-text-control) shows the setting.

### Next Steps

- [Package Overview](https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/nuget/packages/llms-full.txt): what the packages contain.
- [Development Licenses](https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/licensing/development/llms-full.txt): how the license reaches a .NET project.
- [Create Your First WPF Application](https://docs.textcontrol.com/tx-spell-dotnet-wpf/getting-started/tx-text-control/first-application/llms-full.txt): a new .NET project with TX Spell .NET.

---

## Nearby

- **Previous:** [Upgrading From Previous Versions](https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/upgrading/previous-versions/llms-full.txt)
- **Next:** [Breaking Changes](https://docs.textcontrol.com/tx-spell-dotnet-wpf/installation/upgrading/breaking-changes/llms-full.txt)
