2013-01-20 77 views
0

完整的錯誤是這樣的:WPF ObjectDataProvider的錯誤「的路徑無效」

的路徑無效。檢查數據庫的目錄。 [Path = C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ Externals

我在做以下操作。創建本地數據庫。通過綁定連接到DataGrid我使用ObjectDataProvider能夠根據this教程在設計器中編輯數據。我在Project樹的頂層創建了一個名爲「Externals」的文件夾。駐留在database.sdf和dataSet.xsd文件中。現在,我有一個UserControl,其中我這樣做:

<UserControl xmlns:local="clr-namespace:TypeAppRelease.Sasmaster.Data" 
     x:Class="TypeAppRelease.controls.AdminPageControl" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 

     mc:Ignorable="d" 
     d:DesignHeight="700" d:DesignWidth="900" > 


    <UserControl.Resources> 

    <ObjectDataProvider x:Key="AlphaBetProvider" ObjectType="{x:Type local:AlphaBetDataProvider}" /> 
    <ObjectDataProvider x:Key="AlphaBet" ObjectInstance="{StaticResource AlphaBetProvider}" MethodName="GetAlphaBet" /> 
    </UserControl.Resources> 

然後在控制後,我將數據注入到數據網格:

<Grid Background="#FFE5E5E5" HorizontalAlignment="Stretch" 
        VerticalAlignment="Stretch" Height="111" DataContext="{Binding Source={StaticResource AlphaBet}}"> 

       <DataGrid Name="grdEmployee" ItemsSource="{Binding}"/> 

    </Grid> 

最後我有自定義適配器類:

namespace TypeAppRelease.Sasmaster.Data 
{ 
    class AlphaBetDataProvider 
    { 
    AlphaBetErrorTableTableAdapter adapter; 
    _MyDatabase_1DataSet dataset; 
    public AlphaBetDataProvider() 
    { 
     adapter = new AlphaBetErrorTableTableAdapter(); 
     dataset = new _MyDatabase_1DataSet(); 
     adapter.Fill(dataset.AlphaBetErrorTable); 

    } 
    public DataView GetAlphaBet() 
    { 
     return dataset.AlphaBetErrorTable.DefaultView; 
    } 
    } 
} 

不知怎的,當得到這個錯誤這條線:

 <ObjectDataProvider x:Key="AlphaBetProvider" ObjectType="{x:Type local:AlphaBetDataProvider}" /> 

項目編譯並運行顯示DataGrid中的數據,但我可以」像編寫教程一樣編輯DatGrid,我不明白爲什麼程序試圖訪問這個路徑。

+0

什麼是堆棧跟蹤? – SLaks

+0

StackTrace?該應用程序不會引發錯誤,因此我無法在堆棧跟蹤中看到任何內容。 –

+0

那麼這是什麼錯誤? – SLaks

回答

0

最後我通過重置數據庫連接來解決它。