VS2010 открывает мой класс файл (.cs) в режиме конструктора
Я создал класс, который расширяет DbConnection в новом проекте.
public class FakeDbConnection : DbConnection { ... }
В обозревателе решений класс выглядит следующим образом: ![enter image description here]()
И при двойном щелчке он хочет открыть его в режиме разработки, который не будет работать. Открытие файла .csproj выявляет проблему
<ItemGroup>
<Compile Include="FakeADO\FakeDbConnection.cs">
<SubType>Component</SubType>
</Compile>
</ItemGroup>
Даже если я удалю тег SubType
VS2010, он снова добавит его повторно. Очень надоедливый.
Как я могу остановить VS2010 от открытия моего файла .cs в режиме конструктора и просто открыть его как обычный файл кода?
Ответы
Ответ 1
Как описано в ответе на этот вопрос, вы можете сделать это:
[System.ComponentModel.DesignerCategory("Code")]
class FakeDbConnection: DbConnection { ... }
Важно: Атрибут должен быть полностью готов, иначе VS2010 проигнорирует это.
Важно (благодаря jmbpiano): Этот атрибут применим только к первому классу в файле.
Ответ 2
Иерархия наследования указывает, что этот класс (DbConnection
) наследуется от System.ComponentModel.Component
. Попробуйте щелкнуть правой кнопкой мыши файл и просмотреть источник.
Как всегда вы можете проверить MSDN! Здесь - документация для DbConnection
.
Ответ 3
Это потому, что DBConnection наследует "Компонент".
Об отключении VS для добавления "подтипа" в файл csproj - я не думаю, что это возможно.
Вы все еще можете использовать код, щелкнув правой кнопкой мыши в дизайнере → показать код (я думаю, что "F7" является клавишей быстрого доступа для этого)