Sachverhalt:
A. Die Z._ AG, die Q._ AG Basel, die Q._ AG Solothurn, die Q._ AG Zofingen und die Q._ Immobilien AG waren Tochtergesellschaften der Q._ Holding AG.
Die Y._ AG Solothurn holte im Frühling 2000 Generalunternehmer-Offerten zur Erstellung des Parkhauses "R._" in Solothurn ein. Nachdem die Y._ AG eine Offerte der Z._ AG abgelehnt hatte, erarbeitete diese zusammen mit anderen Gesellschaften der Q._ Gruppe für das Parkhaus das Alternativprojekt "S._" und unterbreitete es der Y._ AG. Diese liess später das Parkhaus R._ von einer anderen Unternehmerin erstellen. Die Q._ Gruppe vertrat die Meinung, die Y._ AG habe das von ihr erarbeitete Projekt realisiert, weshalb ihre entsprechenden Aufwendungen zu entschädigen seien. Die Y._ AG hielt dagegen, sie habe ein wesentlich anderes Projekt ausgeführt.
Am 3. Juni 2002 zedierten die Q._ Holding AG, die Q._ AG Basel, die Q._ AG Zofingen und die Q._ AG Solothurn sämtliche Forderungen aus dem Objekt Parkhaus R._ an die Z._ AG.
Am 3. September 2002 fielen die Q._ Holding AG, die Q._ AG Basel und die Q._ AG Solothurn in Konkurs. Am 30. Oktober 2003 wurde die Z._ AG in X._ AG umfirmiert.
B. Nach erfolgloser Aussöhnungsverhandlung klagte die X._ AG (Klägerin) am 27. April 2006 beim Richteramt Solothurn-Lebern gegen die Y._ AG (Beklagte) auf Zahlung von Fr. 947'155.35. Am 31. Oktober 2006 reduzierte die Klägerin den eingeklagten Betrag auf Fr. 945'627.25. Sie verlangte damit Ersatz für die Projektierungskosten für das Parkhaus R._ und machte geltend, diese Kosten seien von ihr zum Teil direkt bezahlt und ihr zum Teil von anderen Q._-Gesellschaften bevorschusst und im Gegenzug unter Passivierung der einzelnen Kreditoren in der Buchhaltung auf ihrem Verrechnungskonto belastet worden. Konzernintern sei der Aufwand für das Projet somit stets in den Geschäftsbüchern der Klägerin geführt worden. Die Beklagte bestritt, dass finanziell alles über die Klägerin abgewickelt worden sei, und wendete ein, dass der Schaden nicht nur bei der Klägerin eingetreten sei, zeigten auch die eingereichten Zessionserklärungen, welche andernfalls gar keinen Sinn machen würden. Diese Zessionen seien jedoch wegen Selbstkontrahierens rechtlich wirkungslos. Vom eingeklagten Forderungsbetrag seien deshalb alle Rechnungen auszuscheiden, welche nicht an die Klägerin adressiert gewesen seien, da insoweit der Schaden vermutungsweise nicht bei ihr eingetreten sei. Von den behaupteten 74 Schadenspositionen seien lediglich 20 mit einem Rechnungstotal von Fr. 275'966,20 bei der Klägerin entstanden. Die anderen 54 angeblichen Ersatzforderungen habe sich die Klägerin bloss zedieren lassen. Da diese Zessionen unwirksam seien, fehle insoweit die Aktivlegitimation der Klägerin.
Die Klägerin stellt sich auf den Standpunkt, die Zessionen seien gültig.
Am 19. Juni 2008 beschloss das Amtsgericht im Einverständnis mit den Parteien, den Prozess vorerst auf die Frage der Gültigkeit der umstrittenen Zessionen zu beschränken und fällte am 19. Juni 2008 folgendes Urteil:
"Es wird festgestellt, dass die Zessionen vom 3. Juni 2002
- der Q._ Holding AG an die Z._ AG,
- der Q._ AG Basel an die Z._ AG,
- der Q._ AG Zofingen an die Z._ AG,
- der Q._ AG Solothurn an die Z._ AG
nicht rechtsgültig sind und die Klägerin nicht berechtigt ist, diese Forderung im vor Richteramt Solothurn-Lebern hängigen Prozess geltend zu machen."
Gleich entschied das Obergericht des Kantons Solothurn am 21. Oktober 2010 auf Appellation der Klägerin.
C. Die Klägerin (Beschwerdeführerin) beantragt dem Bundesgericht mit Beschwerde in Zivilsachen, das Urteil des Obergerichts Solothurn vom 21. Oktober 2010 aufzuheben und festzustellen, dass die Zessionen vom 3. Juni 2002 der Q._ Holding AG, Q._ AG Basel, der Q._ AG Zofingen und der Q._ AG Solothurn an die Z._ AG rechtsgültig seien und die Klägerin diesbezüglich aktivlegitimiert sei. Eventuell sei das angefochtene Urteil aufzuheben und die Streitsache an die Vorinstanz zurückzuweisen.
Die Beklagte (Beschwerdegegnerin) schliesst auf Abweisung der Beschwerde, soweit darauf eingetreten werden könne. Das Obergericht verzichtet auf eine Vernehmlassung.
Erwägungen:
1. 1.1 Das Bundesgericht überprüft von Amtes wegen und mit freier Kognition, ob ein Rechtsmittel zulässig ist (BGE 135 III 1 E. 1.1 S. 3 mit Hinweisen).
1.2 Die Beschwerde an das Bundesgericht ist gegen Endentscheide zulässig, die das Verfahren abschliessen (Art. 90 BGG). Die Beschwerde ist auch gegen einen Teilentscheid zulässig, der das Verfahren für einen Teil der gestellten Begehren, die unabhängig von den anderen Begehren beurteilt werden können, oder für einen Teil der Streitgenossen abschliesst (Art. 91 BGG).
1.3 Die Beschwerdeführerin leitete die von ihr eingeklagte Ersatzforderung bezüglich der nach ihrer Darstellung bloss indirekt bezahlten Aufwendungen nicht nur aus den umstrittenen Zessionen ab. Mit der Feststellung der Ungültigkeit dieser Zessionen entschied demnach das Obergericht nicht umfangmässig über das in der Klage gestellte Leistungsbegehren. Das angefochtene Feststellungsurteil schliesst somit das Verfahren bezüglich der Klagebegehren weder ganz noch teilweise ab, weshalb es gemäss der zutreffenden Annahme der Beschwerdeführerin nicht als Teilentscheid gemäss Art. 91 BGG, sondern als Zwischenentscheid zu qualifizieren ist.
1.4 Die Beschwerde steht gegen selbstständig eröffnete Vor- und Zwischenentscheide offen, welche die Zuständigkeit oder Ausstandsbegehren betreffen (Art. 92 Abs. 1 BGG). Gegen andere Vor- und Zwischenentscheide ist die Beschwerde gemäss Art. 93 Abs. 1 BGG nur zulässig, sofern der Entscheid einen nicht wieder gutzumachenden Nachteil bewirken kann (lit. a) oder die Gutheissung der Beschwerde sofort einen Endentscheid herbeiführen und damit einen bedeutenden Aufwand an Zeit oder Kosten für ein weitläufiges Beweisverfahren ersparen würde (lit. b). Ist die Beschwerde gemäss dieser Regelung nicht zulässig oder wurde von ihr kein Gebrauch gemacht, so sind die betreffenden Vor- und Zwischenentscheide durch Beschwerde gegen den Endentscheid anfechtbar, soweit sie sich auf dessen Inhalt auswirken (Art. 93 Abs. 3 BGG).
1.5 Vorliegend sind die Voraussetzungen gemäss Art. 92 und Art. 93 Abs. 1 lit. b BGG nicht gegeben, weshalb die direkte Anfechtung des Zwischenentscheids voraussetzt, dass er für die Beschwerdeführerin gemäss Art. 93 Abs. 1 lit. a BGG zu einem nicht wieder gutzumachenden Nachteil führt. Ein solcher Nachteil muss rechtlicher Natur sein, d.h. auch durch einen günstigen Endentscheid im kantonalen oder bundesgerichtlichen Verfahren nicht mehr behoben werden können. Ein bloss tatsächlicher Nachteil durch die Verzögerung oder die Verteuerung des Verfahrens genügt generell nicht (BGE 136 II 165 E. 1.2.1 S. 170; 135 II 30 E. 1.3.4 S. 36; je mit Hinweisen).
1.6 Die Beschwerdeführerin macht geltend, das angefochtene Urteil führe zu einem nicht wieder gutzumachenden Nachteil, weil es zur Folge habe, dass das Amtsgericht Solothurn-Lebern die eingeklagte Forderung insoweit abweisen müsse, als sie auf den Zessionen vom 3. Juni 2002 beruhe. Dieser Nachteil könne im Hauptprozess nicht mehr behoben werden.
1.7 Mit diesen Ausführungen geht die Beschwerdeführerin zu Recht davon aus, dass sich der angefochtene Zwischenentscheid für sie nachteilig auf das kantonale Endurteil auswirken kann. Der Zwischenentscheid kann jedoch insoweit gemäss Art. 93 Abs. 3 BGG durch Beschwerde beim Bundesgericht gegen den Endentscheid angefochten werden. Demnach bewirkt der eine rechtliche Vorfrage betreffende Zwischenentscheid keinen nicht wieder gutzumachenden Nachteil. Die unmittelbar gegen den Zwischenentscheid gerichtete Beschwerde ist daher unzulässig.
2. Nach dem Gesagten ist auf die Beschwerde nicht einzutreten. Bei diesem Ausgang des Verfahrens wird die Beschwerdeführerin kosten- und entschädigungspflichtig (Art. 66 Abs. 3 und Art. 68 Abs. 4 BGG).
Demnach erkennt das Bundesgericht:
1. Auf die Beschwerde wird nicht eingetreten.
2. Die Gerichtskosten von Fr. 5'000.-- werden der Beschwerdeführerin auferlegt.
3. Die Beschwerdeführerin hat die Beschwerdegegnerin für das bundesgerichtliche Verfahren mit Fr. 6'000.-- zu entschädigen.
4. Dieses Urteil wird den Parteien und dem Obergericht des Kantons Solothurn, Zivilkammer, schriftlich mitgeteilt.
Lausanne, 25. März 2011
Im Namen der I. zivilrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Die Präsidentin: Der Gerichtsschreiber:
Klett Gelzer