29
27
Problema mapeo LINQ to SQL de tipo nvarchar(1) de SQLSERVER
Filed Under (.Net, LINQ, SQLServer) by admin on 27-07-2011
Tagged Under : .net, DBML, LINQ to SQL, sql server, XML
"La cadena debe contener exactamente un carácter"
Este es el mensaje que te aparece si has mapeado un nvarchar(1) y LINQ to SQL tiene que tratarlo cuando tiene el valor de string vacio es decir “”.
Si se hace sobre el DBML:
Botón derecho > Abrir Con > Editor XML
y se busca la tabla, nos damos cuenta que se esta mapeando de esta forma:
El problema reside en que al ser de 1 posición esta tratando el string de uno como si fuera tipo Char, la solución es editar a mano el DBML y ponerlo como tipo String:
14
Solución error método Load de XDocument: ‘.’, valor hexadecimal 0×00, es un carácter no válido.
Filed Under (.Net) by admin on 14-06-2011
Tagged Under : caracter no valido hexadecimal, error, Linq to XML, Load, Parse, XDocument, XML
Siempre cargaba los documentos XML del streamReader de esta forma:
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 0×00, es un carácter no válido. Línea XXX, posición XX. (casualmente siempre me indicaba la última línea)
Bueno… y como podía ser esto posible… si yo veía el XML correcto, muy bien a ciencia cierta no lo se pero encontré una solución que al menos lo que hace es eliminar todos los caracteres hexadecimales de la cadena de carga de XML.
Utilizando esta función en mi caso:
public static string CleanInvalidXmlChars(string text) { // From xml spec valid chars: // #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] // any Unicode character, excluding the surrogate blocks, FFFE, and FFFF.
string re = @"[^\x09\x0A\x0D\x20-\xD7FF\xE000-\xFFFD\x10000-x10FFFF]"; return Regex.Replace(text, re, ""); }
Y cambiando el Load por el Parse:
XDocument myXmlDocument = XDocument.Parse( CleanInvalidXmlChars(myReader.ReadToEnd()), LoadOptions.None);
06
Hola amigos, os presento Magpie… ¿que es? pues un sencillisimo lector de RSS para PHP. Si lo incluimos su librería en nuestra web nos proporciona una forma muy sencilla de cargar los feeds.
La web: http://magpierss.sourceforge.net/
Ejemplo:
require_once 'rss_fetch.inc';
$url = 'http://magpie.sf.net/samples/imc.1-0.rdf';
$rss = fetch_rss($url);
echo "Site: ", $rss->channel['title'], "<br>
";
foreach ($rss->items as $item ) {
$title = $item[title];
$url = $item[link];
echo "<a href=$url>$title</a></li><br>
";
}
30
Utilizar Parallels Extensions de System.Threading en Framework .NET 3.5
Filed Under (.Net) by admin on 30-03-2011
Tagged Under : Parallels, Reactive Extension, RX, System.Threading
1 -Descargar el Reactive Extensions de .NET (Rx) para 3.5:
http://msdn.microsoft.com/en-us/devlabs/ee794896.aspx
3 – Importar Referencia al proyecto que queramos utilizar, la ruta donde esta instalado es:
C:\Program Files (x86)\Microsoft Cloud Programmability\Reactive Extensions\v1.0.2856.0\Net35\System.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
28
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
{
[OperationContract]
[WebGet // ESTO ES PARA UN GET
(RequestFormat = WebMessageFormat.Xml,
ResponseFormat = WebMessageFormat.Xml,
BodyStyle = WebMessageBodyStyle.Bare,
UriTemplate = "/GetGasPrice/For/City/{city}"
)]
GasPriceData GetPriceDataForCity(string city);
[OperationContract]
[WebInvoke // ESTO PARA UN POST
(Method = "POST",
RequestFormat = WebMessageFormat.Xml,
UriTemplate = "/SetGasPrice/For/ZipCode/{zipCode}/Price/{price}"
)]
void SetPriceDataForZipCode(string zipCode, string price);
}
28
Configurar el tamaño de las peticiones WCF REST del servicio web
Filed Under (.Net) by admin on 28-03-2011
Tagged Under : REST, servicio web, WCF
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>
24
Configurar SQLServer 2005 en TOMCAT
Filed Under (Java, SQLServer) by admin on 24-03-2011
Tagged Under : tomcat
- En el directorio /bin de TOMCAT debemos dejar el driver, en mi caso el sqljdbc.jar para SQLServer 2005
- Modificar el archivo conf/context.xml y añadir para SQLServer 2005:
<Resource name="general" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://[SERVER]:1433;databaseName=[NameBBDD];user=[user];password=[password];"
maxActive="20" maxIdle="10"
maxWait="-1"/>
* Nota: En las pruebas que hemos hecho, para el caso de SQL Server 2005, hay que crear un usuario de autenticación SQL Server y no de login de Windows (autologin con la propia sesión), ya que comprobamos que el driver rechaza las conexiones.
Los campos puestos en negrita pueden variar en función de la instalación que se realice del motor de la BBDD:
jdbc:sqlserver://(servidor):(puerto);databaseName=(BBDD);user=(usuario);password=(password);
24
Configurar la URL de un SW en TOMCAT
Filed Under (Java) by admin on 24-03-2011
Tagged Under : Servicios web, tomcat
Para configurar la URL de un servicio web en TOMCAT deberemos modificar el archivo /conf/server.xml añadiendo las siguientes líneas:
<Context path="/URLdondequeremosqueapunte"
docBase="directoriodondeestaelsw"
reloadable="true" >
</Context>
24
Desplegar un .war en TOMCAT
Filed Under (Java) by admin on 24-03-2011
Tagged Under : desplegar, tomcat, war
Se deben seguir estos pasos:
- Seleccionar el .war y dejarlo en el directorio \webapps
- Reiniciar el TOMCAT
- Automaticamente se deben haber generado y desplegado los archivos
- Probar su funcionamiento


