ReSharper NHibernate Plugin
The Resharper NHibernate Plugin adds support for
NHibernate mapping files to JetBrains
ReSharper. The plugin requires ReSharper v4.1 and supports Visual Studio
2005 and 2008. Its open source, so if there are features missing send me
a patch to add it ;-)
The plugin is hosted at Google Code. You
can get the source and binaries from there.
Versions
0.9.4 (1.0 Alpha 4)
Download
- Support for ReSharper 4.1
0.9.3 (1.0 Alpha 3)
0.9.2 (1.0 Alpha 2)
Download
- Namespace of types from mscorlib can be omitted (like type="String" instead of type="System.String")
- Support for joined-subclass added
- Support for default-access added
0.9.1 (1.0 Alpha 1)
Download
Open Source Project
The project is hosted by Google.
Features
Navigation and refactoring
- References to properties and fields in mapping files are found. That means you can
Ctrl-Click (Go To Declaration) on a mapped property in the mapping file to navigate
to its declaration.
- Full rename refactoring support on mapped properties and fields.
- You can navigate from the declaration to the mapping file by Go To Usage (or Find
Usages).
- NHibernates access attribute is interpreted so that mapped fields are found. Note
that internal or private fields are not found because of a limitation in ReSharpers
reference searcher. If mapping file and implementation of the mapped class are in
different assemblies the mapping assembly should reference the assembly with the
class implementaion in order to find the references.
Analysis support for .hbm.xml files
- Undefined mapped properties are marked
- Undefined types and namespaces are marked
- Mapping files that are not embedded as resource are marked (the #1 error)
- Undefined access attribute values are marked (only the predefined values are supported)
- The severity of the errors can be configured under ReSharper | Options | Code Inspection
| Inspection Severity | NHibernate mappings.
Planned for future releases
- Better support for class names
- Quick fixes for errors found in code inspection.
If you would like to see any feature drop me a note please. Or send me a patch ;-)