У меня есть проект библиотеки классов, и мое пространство имен / основной класс выглядит так:
Файл: Document.cs
namespace HtmlEngine
{
public class Document : IDisposable
{ ...
public class DocumentActionReplaceByTag : IDocumentAction
{
Все это отлично работает, и в другом проекте/ сборка ставлю:
using HtmlEngine;
...
DocumentActionReplaceByTag currentDocAction = new HtmlEngine.DocumentActionReplaceByTag("[NEXT_PART]");
и работает отлично.Однако теперь я разделил этот файл класса Document на несколько файлов, называемых DocumentActions.cs, DocumentSections.cs, а также сохранил основные функции в моем файле Document.cs.Вверху каждого из них я поставил:
public partial class Document : IDisposable
{
Теперь в проекте-потребителе я получаю ошибку «не удается разрешить символ« DocumentActionReplaceByTag »».У меня все еще есть ссылка на HtmlEngine.
Самым близким в сети я смог найти этот пост, в котором аналогично описывается мое положение, но он не очень ясно понимал причины этого: http://www.daniweb.com/software-development/csharp/threads/140673/understanding-partial-classes
Я всегда считал, что частичные классы были синтаксическим сахаром, и они были объединены в один класс до компиляции.Я повторил интерфейс для каждого частичного объявления класса, не уверенный, может ли это быть фактором.
Почему это теперь выходит за рамки?