I have the following situation:
1) A project MyCompany.MyProject.Domain which contains my domain model, and partial classes (such as Contact).
2) I want to 'extend' (by partial class, not extension method) my Contact class with a property "Slug" which will give me a simple URL friendly text representation of first and last name.
3) I have a string extension method ToSlug() in my 'Utility' project MyCompany.MyProject.Utilities which does exactly what I want in 2).
4) The problem: My Utility project is already referencing my domain project which means that I can't get the domain project to see the utility project's ToSlug() method without causing circular reference.
I'm not keen on creating another project to solve this, and I really want to keep the Slug logic shared.
How can I solve this?