Действительно ли возможно сказать Visual Studio не рассматривать исходный файл как “компонент”? [дубликат]

Я согласен с тем, что использование join, как показывает @torbonde, вероятно, самый хороший способ сделать это.

Если вы предпочитаете придерживаться базовых List функций, то я думаю, что то, что у вас есть, вероятно, настолько хорошо, насколько это возможно. Одна небольшая настройка - заменить orElse на defaultValue:

let (v1,v2) = mapY |> Map.tryFind k |> Option.defaultValue ("","")

Еще одна вещь, которую я хотел бы рассмотреть, - нужны ли вам плоские кортежи - если вы были довольны вложением кортежей как на входе, так и на входе? со стороны вывода вы можете сделать что-то вроде этого (которое по сути все еще остается вашим исходным кодом, но немного короче):

let x = [(1,"x");(2,"y")]
let y = [(1, ("xx", "xxx"));(2,("yy","yyy"))]  

let mapY = Map.ofSeq y
let r = x |> List.map (fun (k, v) -> 
     k, v, defaultArg (mapY.TryFind k) ("",""))
25
задан Glorfindel 8 June 2019 в 16:06
поделиться

3 ответа

Разве вы не можете использовать атрибут DesignerCategory для украшения своего класса?

При украшении вашего класса с помощью этого атрибута, как показано ниже, файл должен открываться в «представлении кода», когда вы дважды щелкаете по нему:

[System.ComponentModel.DesignerCategory("Code")]
public class MyComponent
{
}
45
ответ дан Frederik Gheysels 28 November 2019 в 20:49
поделиться

Как уже упоминал в своем комментарии OregonGhost, это также происходит, если вы создаете частичный файл класса из формы.

Проблема еще хуже. Если вы посмотрите в файл своего проекта, вы можете найти записи для каждого файла, например, такие:

<Compile Include="FormMain.cs">
  <SubType>Form</SubType>
</Compile>

. Поэтому решение должно состоять в том, чтобы удалить строку <SubType>...</SubType>, потому что она кажется корнем всех проблемы. Но если вы удалите эту строку, сохраните файл, откройте его в Visual Studio, сохраните его снова и снова посмотрите, строка снова появится!

Кажется, в Visual Basic есть только одно жестко закодированное исключение Studio и это * .Designer.cs. Так что нет решения для решения этой проблемы.

5
ответ дан Oliver 28 November 2019 в 20:49
поделиться

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

0
ответ дан Christian Hayter 28 November 2019 в 20:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: