15 49.0138 8.38624 1 0 4000 1 https://www.alexmedina.net 300 true 0
.Net

Linq to XML: Diferencia entre Elements() y Descendants()

0 Comments
La diferencia es sencilla, mientra Descendants() cuenta todos los nodos (anidados incluidos), Elements() solo cuenta los del mismo nivel. string xml = @"                 <Root>                     <Item>                         <id>1</id>                     </Item>                     <Item>                         <id>2</id>                     </Item>                     <Item>                         <id>3</id>                         <Items>                             <Item>                                 <id>5</id>                             </Item>                             <Item>                                 <id>6</id>                             </Item>                          …

Solución error método Load de XDocument: ‘.’, valor hexadecimal 0x00, es un carácter no válido.

1 Comment
Siempre cargaba los documentos XML del streamReader de esta forma: XDocument myXmlDocument = XDocument.Load(myReader, LoadOptions.None);XDocument myXmlDocument = XDocument.Load(myReader, LoadOptions.None); Hasta que hace unos días me salía un error con un documento que decía: ‘.’, valor hexadecimal 0x00, es un carácter no válido. Línea XXX, posición XX. (casualmente siempre me indicaba la última línea) Bueno… y…

Utilizar Parallels Extensions de System.Threading en Framework .NET 3.5

0 Comments
1 -Descargar el Reactive Extensions de .NET (Rx) para 3.5: http://msdn.microsoft.com/en-us/devlabs/ee794896.aspx 2 – Instalar el paquete .msi 3 – Importar Referencia al proyecto que queramos utilizar, la ruta donde esta instalado es: C:Program Files (x86)Microsoft Cloud ProgrammabilityReactive Extensionsv1.0.2856.0Net35System.Threading.dll 4- Incluir los using: using System.Threading; using System.Threading.Tasks; 5- Documentación MSDN de Parallel: http://msdn.microsoft.com/es-es/library/system.threading.tasks.parallel.aspx

WCF REST, un OperationContract con GET y otro con POST

0 Comments
A veces por motivos de seguridad o eficiencia hay que configurar las llamadas WCF REST por GET o por POST, es altamente recomendable que las peticiones GET al servidor se hagan por GET y las SET por POST, por motivos de seguridad sobretodo. Por eficiencia es siempre mejor el GET. [ServiceContract] public interface IGasPriceService {…

Configurar el tamaño de las peticiones WCF REST del servicio web

0 Comments
Configurar el tamaño de las peticiones WCF REST, esto se realiza en el web.config <bindings> <basicHttpBinding> <binding name="LargeBuffer" ... <readerQuotas  maxDepth="2147483647"  maxStringContentLength="2147483647"  maxArrayLength="2147483647" maxBytesPerRead="2147483647"  maxNameTableCharCount="2147483647" /> .... </binding> </basicHttpBinding> </bindings> <services> <service name="WcfService4.Service1" behaviorConfiguration="WcfService4.Service1Behavior"> <endpoint bindingConfiguration="LargeBuffer" <!-- without this, the default quota of 8192 applies --> address="" binding="basicHttpBinding" contract="WcfService4.IService1"> .... </endpoint> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/> </service> </services>

Personalizar DataMember de DataContract

0 Comments
Os pongo un ejemplo, ya que en ocasiones lo que se quieres es cambiar el nombre por ejemplo de la columna que queremos formar a partir de los datos enviados. Pues bien es tan facil como «reescribir el atributo Name» [DataContract(Name="status")] public class StatusData { private string _name; private string _errorDescription = null; [DataMember(Name =…