Let's say I read some book objects from my data service and use each result to create a ViewModel to display, for example, in a ListBox or DataGrid.
public class BookViewModel {
public BookViewModel(DataService.BookResult B) {
this.CurrentBook = B;
}
If this ViewModel has many identical exact properties, such as a book object from a data service, is there any good reason to duplicate all the necessary properties from the DataService.BookResult to the ViewModel, or is it ok to save the Dataservice.BookResult object and bind it:
<sdk:DataGridTemplateColumn SortMemberPath="CurrentBook.Title" Header="Title" Width="430">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock VerticalAlignment="Center" Margin="5,0,0,0" Text="{Binding CurrentBook.Title}" ToolTipService.ToolTip="{Binding CurrentBook.Title}"></TextBlock>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
<sdk:DataGridTemplateColumn Header="Publisher" Width="150">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Grid VerticalAlignment="Center" Margin="7,0,0,0">
<TextBlock x:Name="publisherText" Visibility="{Binding CurrentBook.Publisher, Converter={StaticResource hasValueConverter}}" Text="{Binding CurrentBook.Publisher}" ToolTipService.ToolTip="{Binding CurrentBook.Publisher}" />
<TextBlock Visibility="{Binding Visibility, ElementName=publisherText, Converter={StaticResource visibilityInverter}}" Style="{StaticResource textForNoData}">No Publisher Info</TextBlock>
</Grid>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
, , , ValueInjecter -mapping minutiae factory, , , , - Silverlight/WPF ?