2014-02-07 3 views
8

Я использую в C# Windows Application, я с помощьюОшибка «тип или пространство имен не может быть найден» во время процесса сборки

TempProWin -> Для Windows-приложений Проекты
TempProApp -> Для База данных и функциональные возможности, такие как файл классов, с использованием метода CSLA.

В TempProWin.frmLogin.cs:

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using TempProApp; 

private void frmLogin_Load(object sender, EventArgs e) 
{ 
UserLoginList oUserLoginList = UserLoginList.GetUserLoginList(); 
cmbUserName.DataSource = oUserLoginList; 
cmbUserName.DisplayMember = "Select User"; 
} 

Но когда я строю это приложение, я получил следующее сообщение об ошибке:

Error 5 The type or namespace name 'TempProApp' could not be found (are you missing a using directive or an assembly reference?)

Я уже включают в себя ссылку на TempProApp.dll с пути D: \ TempPro \ TempProApp \ bin \ Debug

+2

Можете ли вы проверить свой.Версия .NET Framework? Он должен соответствовать вашей сборке –

+2

проверить это http://stackoverflow.com/questions/4764978/the-type-or-namespace-name-could-not-be-found –

+0

Почему вы ссылаетесь на dll в bin/debug папка? Если это сторонняя DLL, добавьте ее в решение, добавьте ссылку на нее и установите для нее значение Копировать Local = true. – Maarten

ответ

3

RightClick on TempProApp и перейдите к определению.

В верхней части экрана вы увидите имя dll и его версию. Вы можете проверить, используете ли вы ту же версию dll или нет.

+0

Got Error «Не удается перейти« TempProApp »« – user1941948

+0

Вы поместили эту dll в выходной каталог того же приложения? Если да, сохраните его в другом каталоге, а затем попробуйте. –

0

Убедитесь, что вы правильно указали пространство имен, которое хотите включить. Также ссылка на .dll должна быть успешно создана.

Один из способов всегда быть уверенным в том, что указано выше, - это включить проект, который вы хотите использовать в своем рабочем проекте. Это также гарантирует, что в каждой сборке вашего рабочего проекта ссылочный ПРОЕКТЕ перестраивает тоже, так что любые сделанные изменения вступят в силу

On Solution Explorer->Right Click-> Add existing Project-> Select the Project you would initially Reference 

On References->Add new Reference-> Select Projects Tab-> Select the Project you added 
3

A поддельной «Имя типа или пространства имен не может быть найден» билд ошибка может возникнуть, если у вас есть другие строить предупреждения.

Я частично закодировал асинхронный HTTP-метод, который генерировал предупреждения о недостающих ожиданиях. Я планировал получить остальную часть системы, а затем исправить это.

Но я начал получать вышеуказанную жесткую ошибку. Я провел последние три часа, пытаясь изолировать его дело. Я попробовал все предложенные исправления, четыре проверенных имени и т. Д., И даже удалил и воссоздал проект, который вызывал жалобы. Без изменений. Мне показалось странным, что, когда я нажал Go To Definition на ссылку о нарушении, VS 2012 мог найти ее без проблем. WTF *

В качестве последнего средства я прокомментировал код, создающий предупреждения. Это фиксировало ложные сообщения об ошибках, и сборка выполнена успешно.

Итак, если вы исключили другие причины, и у вас есть другая сборка предупреждения, попробуйте их исправить.

-2

Я столкнулся с той же ошибкой при подключении Gamecenter Achievements, после чего понял, что пропустил имя класса.

using UnityEngine.SocialPlatforms; 
using UnityEngine.SocialPlatforms.GameCenter; 

Возможно, вам тоже не хватает 1 класса.

0

Если пространство имен, которое вы используете, не предоставляет публичных методов, оно также может вызвать эту ошибку. Убедитесь, что пространство имен, которое вы используете, содержит общедоступные методы в открытом классе.

 Смежные вопросы

  • Нет связанных вопросов^_^