Pergunta

Tenho um problema estranho para o qual não consigo descobrir uma solução:

Eu fiz um pequeno aplicativo WPF escrito em C# que usa um banco de dados .mdf do SQL Server Express anexado que eu manipula através do LINQ.

Eu tenho um ListView no formulário em que o DataContext está definido como .DataContext = dr.FindAllBuyOrders() que retorna um objeto de compra iQueryable. Tudo isso funciona bem. No entanto, quando faço o mesmo através do XAML com o objectDataProvider:

<ObjectDataProvider MethodName="FindAllBuyOrders" ObjectType="{x:Type local:DataRepository}" x:Key="dataBuyOrders" />

<ListView Name="listViewBuyOrders" VerticalContentAlignment="Top" ItemsSource="{Binding Source={StaticResource dataBuyOrders}}" ItemTemplate="{StaticResource listViewBuyOrders}">
    <ListView.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel />
        </ItemsPanelTemplate>
    </ListView.ItemsPanel>
</ListView>

Então eu recebo o seguinte erro:

An attempt to attach an auto-named database for file 
C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Data.mdf 
failed. A database with the same name exists, or specified file 
cannot be opened, or it is located on UNC share.
Foi útil?

Solução

Eu encontrei a solução:

O Connectionstring foi armazenado com um caminho relativo para o banco de dados em vez do absoluto. Veja mais neste link:

Incorporar o SQL Express para usar com o LINQ ao SQL e as instâncias do usuário pode ser uma dor

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top