то, каково различие между тегом cfproperty, определило переменную, и переменные определяют объем переменной в coldfusion?

Я изменил образец dimarzionist. Эта версия будет только работать с Перечислениями и не позволять структурам пройти.

public static T ParseEnum<T>(string enumString)
    where T : struct // enum 
    {
    if (String.IsNullOrEmpty(enumString) || !typeof(T).IsEnum)
       throw new Exception("Type given must be an Enum");
    try
    {

       return (T)Enum.Parse(typeof(T), enumString, true);
    }
    catch (Exception ex)
    {
       return default(T);
    }
}
5
задан Tomalak 12 December 2012 в 12:38
поделиться

3 ответа

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

Вот техническая заметка, в которой CFPROPERTY обсуждается немного подробнее: http://kb2.adobe.com/cps /191/tn_19169.html

Область переменных «защищена» и доступна только внутри компонента. Переменные области видимости "this" являются общедоступными свойствами. И, конечно же, любая переменная, объявленная с ключевым словом "var", является частной для этого метода.

Вот еще некоторые сведения о компонентах: http://www.hemtalreja.com/?p=94

12
ответ дан 18 December 2019 в 09:09
поделиться

Примечание: тег cfproperty не определяет переменные НЕ .

Однако, это полезно, когда вы используете CFC Explorer (переходите к CFC напрямую), чтобы вы могли видеть свойства объекта CFC.

FYI ... cfproperty будет гораздо более полезным в CF9. См .: ORM - Переосмысление интеграции с базой данных ColdFusion

6
ответ дан 18 December 2019 в 09:09
поделиться

cfproperty полезно при использовании пользовательских объектов в удаленных методах. Например, предположим, что у меня есть следующий компонент:

<cfcomponent displayname="User">
    <cfset variables.firstName = "first" />
</cfcomponent>

, который я хотел использовать в качестве возврата к удаленному методу, потребляемому через SOAP. Мне потребуются теги для каждой переменной, которую я хочу инкапсулировать в возвращаемый объект, чтобы этот объект был включен в документ WSDL как сложный тип. Следовательно, компонент сверху должен быть:

<cfcomponent displayname="User">
    <cfproperty name="firstName" type="string" />
    <cfset variables.firstName = "first" />
</cfcomponent>
0
ответ дан 18 December 2019 в 09:09
поделиться
Другие вопросы по тегам:

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