Q:

Given a Generic  how to create a new E and return it?

This code returns a variable set of fields and I want to return a strongly typed <E>:
public IList<E> Get(Expression<Func<E, object>> selectLambda == null)
{
    if (selectLambda == null)
        selectLambda = p => p;
    var partialSet = DC.CreateQuery<E>("[" + typeof(E).Name + "]");
    foreach ( var record in partialSet)
    {
        var tempEntity = new E();  // This is the error
        MapIt( record, tempContract);
        result.Add(tempContract);
    }
    return result;
}

A:

The simplest way is to add a constraint:
public IList<E> Get(Expression<Func<E, object>> selectLambda == null)
    where E : new()

Then the rest of your code will compile :)
If you can't use constraints there (e.g. because they would propagate all over the place) but you happen to know that it will work at execution time, you could use:
var tempEntity = Activator.CreateInstance<E>();

