c# foreach apex-code

c# - ¿Foreach con un seleccionar/de entre corchetes?



apex-code (2)

No me gusta dejar preguntas sin contestar ...

Para la pregunta en particular planteada ... http://www.salesforce.com/us/developer/docs/apexcode/Content/langCon_apex_loops_for_SOQL.htm

Para el lenguaje de consulta de objetos de Salesforce (SOQL) en general, que los corchetes de selección / de entre se conocen como ... http://www.salesforce.com/us/developer/docs/soql_sosl/salesforce_soql_sosl.pdf

Para el lenguaje APEX en general, ya que ese es el idioma que se ve muy C # -ish (más ejemplos de preguntas planteadas) ... http://wiki.developerforce.com/page/Apex_Code:_The_World''s_First_On-Demand_Programming_Language

Hace poco estuve mirando clases de contenedor y busqué en Google la siguiente página ... http://wiki.developerforce.com/page/Wrapper_Class

Si bien entendí las clases de envoltorio, me desconcertó lo siguiente ...

public List<cContact> getContacts() { if(contactList == null) { contactList = new List<cContact>(); for(Contact c: [select Id, Name, Email, Phone from Contact limit 10]) { // As each contact is processed we create a new cContact object and add it to the contactList contactList.add(new cContact(c)); } } return contactList; }

y en particular...

for(Contact c: [select Id, Name, Email, Phone from Contact limit 10]) { ... }

¿De qué se selecciona y de dónde? ¿Dónde puedo ver más información sobre esto en el foreach?

Sé sobre LINQ y el select, from, where, etc .... pero nunca he visto _ esta sintaxis antes. ¿Qué es y cómo investigo más sobre esta sintaxis?


También hay esta Hoja de trucos que muestra más sobre ese tipo de sintaxis, junto con otras formas de utilizar APEX. Compruébalo aquí

El bucle For ... "define un bucle. Los tres tipos de bucles for son: iteración usando una variable, iteración sobre una lista e iteración sobre una consulta.

Ejemplo:

String s = ''Acme''; for (Account a : [SELECT Id, Name, FROM account WHERE Name LIKE :(s+''%'')]) { // Your code }

Esa sintaxis es para el SOQL mencionado anteriormente, y es ligeramente diferente del diseño propio de C # de la sintaxis LINQ, ¡aunque son muy similares!