Я настоятельно рекомендую вам не использовать <join/>
для этого.Несмотря на то, что он выполнит то, что вы просили, он создаст другие проблемы.
Вместо этого Заказ должен иметь отношения с Заказчиком.Затем вы можете проецировать имя, если хотите, хотя проще просто использовать order.Customer.Name
.
Итак, оно сводится к следующему:
1) Добавить свойство Customer
к Order
public virtual Customer Customer { get; set; }
2) Сопоставьте свойство (в данном примере CustomerId - это имя столбца FK)
<many-to-one name="Customer" column="CustomerId"/>
3) Если вы специально хотите иметь CustomerName
недвижимость, спроектировать ее от Заказчика:
public virtual string CustomerName { get { return Customer.Name; } }