Segnalo a tutti quanti la disponibilità di Asp.NET MVC 3.
Ecco quella che secondo me è la principale novità:
Engine View Razor
Hanno introdotto la possibilità (e quindi mantenendo ancora le classiche aspx) di utilizzare come engine per le view il motore razor.
La principale caratteristica che lo rende davvero una novità importante è la semplicità e fluidità con cui si riesce a nestare codice c# o vb all’interno dell’html. Infatti ora non è più necessario aprire il tag <% scrivere il codice chiudere con il tag %> ma si può andare belli sciolti come potete vedere in modo più esaustivo in questo articolo:
http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx
Per maggiori informazioni sulle altre novità (alcune davvero interessanti):
http://www.asp.net/mvc/mvc3
Segnalo il progetto php for android:
http://phpforandroid.net/
Ammetto di non averlo mai provato per adesso, ma ce l’ho nei todo’s!
Ho appena messo in produzione il portale Azienda Condominio, primo sviluppo realizzato completamente in ASP.NET.
Le tecnologie utilizzate sono:
ASP.NET MVC 2
LINQ TO SQL
SQL SERVER
Inoltre altri componenti sono:
XML, JQUERY, TELERIK MVC, CACHING MVC
Il portale espone moltissime informazioni inerenti ad un modello innovativo di gestione condominiale che forse a molti potrebbero interessare.
Per un progetto avevo la necessità di estrarre randomicamente i dati presenti in una tabella “Articolo” contenente appunto articoli di categorie diverse.
Per fare questa operazione con classici statement SQL con mysql sarebbe stato abbastanza semplice, bastava utilizzare una query del tipo:
1
| SELECT *, RAND() AS rand_value FROM Articolo ORDER BY rand_value; |
Con il modello a oggetti di LINQ to SQL, era un filo più complesso (tra l’altro come base dati avevo SQL Server), per cui ho seguito questo howto:
http://weblogs.asp.net/fmarguerie/archive/2008/01/10/randomizing-linq-to-sql-queries.aspx
In buona sostanza è sufficiente andare a creare una nuova view:
1
| CREATE VIEW RandomView AS SELECT NEWID() AS ID |
E una funziona che possa richiamarla:
1 2 3 4 5 6 7 8
| CREATE FUNCTION GetNewId
(
)
RETURNS uniqueidentifier
AS
BEGIN
RETURN (SELECT ID FROM RandomView)
END |
A questo punto il tutto si conclude andando ad aggiornare il modello LINQ to SQL per poter utilizzare la funzione utilizzare la seguente sintassi:
1 2 3 4 5 6 7 8 9
| public IEnumerable<articolo> GetArticoliRandom(string AreaCode)
{
IEnumerable < Articolo > ArtList = (from art in _model.Articolo
where art.AreaCode == AreaCode
orderby _model.GetNewId()
select art).Take(5);
return ArtList;
} |
Ovviamente il .Take(5) non serve necessariamente ma solo nel mio caso dove dovevo estrarre 5 articoli.