2013-10-09 74 views
0

我有一個名爲Contact.vb的項目的根文件夾中的公共VB類和另一個名爲Service.vb的App_Code文件夾中的VB類。在App_Code文件夾中的VB類無法訪問根文件夾中的VB類

如果我試圖聲明Contact類中Service.vb這樣的:

Dim ds As New Contact 

我得到這個錯誤而編譯:

類型 '聯繫' 是沒有定義。

我用C#編碼,所以我真的不明白我在這裏失蹤......

編輯#1:

下面是聯繫班級的第一部分。該類是根據模式生成的。

'------------------------------------------------------------------------------ 
' <autogenerated> 
'  This code was generated by a tool. 
'  Runtime Version: 1.1.4322.2300 
' 
'  Changes to this file may cause incorrect behavior and will be lost if 
'  the code is regenerated. 
' </autogenerated> 
'------------------------------------------------------------------------------ 

Option Strict Off 
Option Explicit On 

Imports System 
Imports System.Data 
Imports System.Runtime.Serialization 
Imports System.Xml 


<Serializable(), _ 
System.ComponentModel.DesignerCategoryAttribute("code"), _ 
System.Diagnostics.DebuggerStepThrough(), _ 
System.ComponentModel.ToolboxItem(true)> _ 
Public Class Contact 
    Inherits DataSet 

    Private tableContact As ContactDataTable 

編輯#2: 我終於發現什麼是錯的。如果我在管理員模式下在VS中構建項目,它會成功構建,但如果我不處於管理員模式,則會失敗。

我不知道爲什麼它是這樣,但我想這可能是因爲文件夾權限或類似的東西。

+0

是包含在項目中還是隻在文件夾中? – Plutonix

+0

在項目中。 – bale3

+0

你可以發佈聯繫人的頭幾行嗎? prj文件夾僅用於組織大型項目,表單,類等。只要文件/類在OP中添加的prj – Plutonix

回答

0

我終於發現出了什麼問題。如果我在管理員模式下在VS中構建項目,它會成功構建,但如果我不處於管理員模式,則會失敗。

我不知道爲什麼它是這樣,但我想這可能是因爲文件夾權限或類似的東西。

0

你確定班上沒有錯別字嗎?您是否能夠構建/運行該項目,如果你把線:

Dim ds As New Contact 

我想你的類如:

'------------------------------------------------------------------------------ 
' <autogenerated> 
'  This code was generated by a tool. 
'  Runtime Version: 1.1.4322.2300 
' 
'  Changes to this file may cause incorrect behavior and will be lost if 
'  the code is regenerated. 
' </autogenerated> 
'------------------------------------------------------------------------------ 

Option Strict Off 
Option Explicit On 

Imports System 
Imports System.Data 
Imports System.Runtime.Serialization 
Imports System.Xml 


<Serializable(), _ 
System.ComponentModel.DesignerCategoryAttribute("code"), _ 
System.Diagnostics.DebuggerStepThrough(), _ 
System.ComponentModel.ToolboxItem(True)> _ 
Public Class Contact 
    Inherits DataSet 

    'Private tableContact As ContactDataTable 

End Class 

然後設法使用Dim DS ...行沒有任何錯誤。

我確實有類似的問題,之前我通過重建解決方案進行了整理。

你試過關閉並重新打開VS?

+0

不,沒有錯別字,但我試圖將聯繫人類複製到App_Code文件夾,然後它工作。 – bale3

+0

啊,從你的問題,我認爲它已經在那裏:) –

0

您的項目是一個Web應用程序或網站?

有這個2箱子App_Code文件夾的行爲之間有許多差異......

如果您使用C#這種方法,通常在vb.net沒有區別。

另一件事:在c#中,命名空間是由visual studio默認創建的,在vb.net中(如果我沒記錯的話)不是。

相關問題