Sachverhalt:
A.
Die Ausgleichskasse des Kantons Solothurn (im Folgenden: Ausgleichskasse) lud am 19. Januar 2018 für einen Auftrag betreffend Unterhaltsreinigung ihrer Liegenschaft drei Unternehmen zur Offertstellung ein. Innert Frist reichte die A._ AG ein Angebot für Fr. 89'971.70.-- ein, die C._ AG ein solches für Fr. 104'365.20.-- und die B._ AG eines für Fr. 97'346.42.-- (je inkl. MWST). Mit Verfügung vom 21. Februar 2018 wurde der Zuschlag an die B._ AG zum Betrag von netto Fr. 91'640.64.-- (bereinigtes Angebot inkl. MWST) erteilt. Dieses Ergebnis wurde der P. Sonderegger AG mit Schreiben vom gleichen Datum mitgeteilt.
B.
Auf eine von A._ AG dagegen erhobene Beschwerde trat das Verwaltungsgericht des Kantons Solothurn mit Urteil vom 14. März 2018 nicht ein, im Wesentlichen mit der Begründung, beim hier in Frage stehenden Auftragswert sei die Beschwerde an das Verwaltungsgericht mangels Erreichung des Schwellenwerts nicht zulässig und es könne offen bleiben, ob die A._ AG als Drittplatzierte ein schutzwürdiges Anfechtungsinteresse besitze bzw. überhaupt eine reelle Chance auf den Erhalt des Zuschlags habe.
C.
Mit Eingabe vom 28. März 2018 reicht die A._ AG Verfassungsbeschwerde beim Bundesgericht ein. Sie beantragt, das angefochtene Urteil sei aufzuheben und die Angelegenheit zur Neubeurteilung im Sinne der bundesgerichtlichen Erwägungen an die Vorinstanz zurückzuweisen.
Am 29. März 2018 wurde der Beschwerde antragsmässig superprovisorisch die aufschiebende Wirkung zuerkannt.
In ihrer Stellungnahme vom 4. April 2018 zum Gesuch um aufschiebende Wirkung machte die Ausgleichskasse geltend, ein neuer Vertrag mit den Konditionen der Ausschreibung vom 19. Januar 2018 (mit Wirkung ab dem 1. Juli 2018) sei noch nicht abgeschlossen worden. Durch die Gewährung der aufschiebenden Wirkung werde dies verhindert, was dazu führe, dass die Ausgleichskasse auf monatlich signifikante Kosteneinsparungen verzichten müsste und einen vermögensrechtlichen Schaden erleide. Die B._ AG verzichtete auf eine Stellungnahme zur aufschiebenden Wirkung. In der Folge erteilte der Präsident der II. öffentlich-rechtlichen Abteilung des Bundesgerichts mit Verfügung vom 16. April 2018 der Beschwerde teilweise die aufschiebende Wirkung. Der Ausgleichskasse wurde untersagt, bis zum Abschluss des bundesgerichtlichen Verfahrens mit der Zuschlagsempfängerin den definitiven Vertrag gemäss der Ausschreibung vom 19. Januar 2018 abzuschliessen; sie wurde aber dazu ermächtigt, bis zum bundesgerichtlichen Endurteil in der Sache mit der - bereits für sie arbeitenden - Zuschlagsempfängerin einen befristeten Vertrag (mit Wirkung ab dem 1. Juli 2018) betreffend die Arbeiten für die Unterhaltsreinigungen einzugehen.
Die Ausgleichskasse verzichtet auf eine Vernehmlassung zur Verfassungsbeschwerde. Das Verwaltungsgericht schliesst auf Abweisung der Verfassungsbeschwerde und verzichtet im übrigen auf eine Vernehmlassung. Die B._ AG äussert sich in der Sache nicht.
Erwägungen:
1.
Das Bundesgericht prüft seine Zuständigkeit und die weiteren Eintretensvoraussetzungen von Amtes wegen (Art. 29 Abs. 1 BGG) und mit freier Kognition (BGE 141 II 113 E. 1 S. 116).
1.1. Die frist- und formgerecht eingereichte Eingabe (Art. 42 und Art. 100 Abs. 1 BGG) richtet sich gegen den kantonal letztinstanzlichen, beim Bundesverwaltungsgericht nicht anfechtbaren, verfahrensabschliessenden (Art. 86 Abs. 1 lit. d und Art. 90 BGG; Art. 33 lit. i VGG [SR 173.2]) Nichteintretensentscheid des Verwaltungsgerichts in einer Angelegenheit des öffentlichen Rechts (Art. 82 lit. a BGG). Soweit die Vorinstanz auf ein Rechtsmittel nicht eintritt, ohne mit einer Eventualbegründung die Sache auch materiell zu beurteilen, kann vor Bundesgericht nur das Nichteintreten angefochten werden. Ist die Beschwerde begründet, weist das Bundesgericht die Sache zur weiteren Beurteilung des Falles zurück. Trifft dies nicht zu, so hat es bei diesem Nichteintretensentscheid sein Bewenden (BGE 139 II 233 E. 3.2 S. 236; 135 II 38 E. 1.2 S. 41; Urteil 2C_1014/2015 vom 21. Juli 2016 E. 1.2).
1.2. Der angefochtene Entscheid erging auf dem Gebiet der öffentlichen Beschaffungen. Art. 83 lit. f BGG schliesst die Beschwerde in öffentlich-rechtlichen Angelegenheiten gegen Entscheide auf dem Gebiet der öffentlichen Beschaffungen aus, wenn der geschätzte Wert des zu vergebenden Auftrages den massgebenden Schwellenwert des Bundesgesetzes vom 16. Dezember 1994 über das öffentliche Beschaffungswesen (BoeB; SR 172.056.1) oder des Abkommens vom 21. Juni 1999 zwischen der Schweizerischen Eidgenossenschaft und der Europäischen Gemeinschaft über bestimmte Aspekte des öffentlichen Beschaffungswesens (SR 0.172.052.68) nicht erreicht (Ziff. 1) und sich keine Rechtsfrage von grundsätzlicher Bedeutung stellt (Ziff. 2). Die beiden Voraussetzungen müssen kumulativ erfüllt sein (BGE 141 II 14 E. 1.2 S. 20 ff.; 133 II 396 E. 2.1 S. 398; Urteil 2C_384/2016 vom 6. März 2017 E. 1.2, nicht publ. in: BGE 143 I 177).
Gemäss Art. 42 Abs. 2 BGG obliegt es dem Beschwerdeführer, darzutun, dass sich eine Frage von grundsätzlicher Bedeutung stellt (BGE 133 II 396 E. 3.1 S. 399; Urteil 2D_87/2008 vom 10. November 2008 E. 1.2). Die Beschwerdeführerin behauptet nicht, dass dies der Fall sei. Daher kann offen bleiben, ob die erforderliche Auftragssumme bei Dienstleistungen (gegenwärtig Fr. 230'000.--; vgl. Art. 6 Abs. 1 lit. b BoeB in Verbindung mit Art. 1 lit. b Verordnung des WBF vom 22. November 2017 über die Anpassung der Schwellenwerte im öffentlichen Beschaffungswesen für die Jahre 2018 und 2019 [SR 172.056.12]) erreicht ist. Das Rechtsmittel der Beschwerde in öffentlich-rechtlichen Angelegenheiten erweist sich somit gemäss Art. 83 lit. f BGG als unzulässig und wird zu Recht durch die Beschwerdeführerin auch nicht erhoben.
1.3. Zu prüfen ist deshalb die Zulässigkeit der subsidiären Verfassungsbeschwerde (Art. 113 ff. BGG).
1.3.1. Gemäss Art. 115 BGG ist zur Verfassungsbeschwerde berechtigt, wer vor der Vorinstanz am Verfahren teilgenommen hat oder keine Möglichkeit zur Teilnahme erhalten hat (lit. a) und ein rechtlich geschütztes Interesse an der Aufhebung oder Änderung des angefochtenen Entscheids hat (lit. b). Letzteres ist im Bereich des öffentlichen Vergabewesens der Fall, wenn der Beschwerdeführer als unterlegener Bewerber eine reelle Chance gehabt hätte, im Falle der Gutheissung seines Rechtsmittels den Zuschlag zu erhalten (BGE 141 II 14 E. 4.1 S. 27; Urteil 2D_74/2010 vom 31. Mai 2011 E. 1.2 mit Hinweisen).
1.3.2. Die Beschwerdeführerin hat am vorinstanzlichen Verfahren teilgenommen (Art. 115 lit. a BGG). Es fragt sich, ob sie über ein rechtlich geschütztes Interesse im Sinne von Art. 115 lit. b BGG verfügt.
Mit ihrem Angebot erzielte die Beschwerdeführerin 86 von 100 möglichen Punkten und erreichte den dritten Rang. Damit liegt sie knapp hinter der zweitplatzierten Anbieterin, die 90 Punkte erreichte. Der Unterschied zur Zuschlagsempfängerin beträgt sieben Punkte. Aus der Angebotsbewertung der Ausgleichskasse vom 21. Februar 2018 geht hervor, dass die Beschwerdeführerin das preislich günstigste Angebot abgegeben hatte und somit beim Zuschlagskriterium "Angebotssumme" die volle Punktzahl (50 Punkte) erhielt. Ebenfalls die volle Punktzahl (10 Punkte) erzielte sie beim Zuschlagskriterium "Qualitäts- und Umweltbewusstsein". Schlechter bewertet als die beiden anderen Anbieterinnen wurde sie in den Bereichen "Wirtschaftliche Leistungsfähigkeit" und "Erfahrung des Anbieters". Die Beschwerdeführerin ist der Auffassung, dass die Voraussetzungen für die Erfüllung dieser Zuschlagskriterien kleinere Unternehmen gegenüber grossen Unternehmen benachteiligten. Sollten ihre Vorbringen zutreffen, wäre es bei dieser Ausgangslage nicht ohne weiteres klar, dass die aktuelle Rangfolge Bestand haben würde (vgl. auch Urteile 2D_50/2009 vom 25. Februar 2010 E. 1.2; 2D_34/2010 vom 23. Februar 2011 E. 1.1). Im Ergebnis ist die Legitimation der Beschwerdeführerin zur subsidiären Verfassungsbeschwerde zu bejahen.
1.3.3. Nach dem Gesagten ist auf die subsidiäre Verfassungsbeschwerde einzutreten.
2.
2.1. Mit der subsidiären Verfassungsbeschwerde kann einzig die Verletzung verfassungsmässiger Rechte gerügt werden (Art. 116 BGG). Ausgeschlossen ist damit die Rüge der Missachtung von Gesetzes- und Konkordatsrecht (Urteile 2C_1014/2015 vom 21. Juli 2016 E. 4; 2C_384/2016 vom 6. März 2017 E. 1.3.4). Zulässig ist aber die Rüge einer willkürlichen Anwendung der massgebenden Submissionsgesetzgebung, da im öffentlichen Beschaffungsrecht ein Anbieter ein rechtlich geschütztes Interesse an der Einhaltung der entsprechenden Gesetzgebung hat (BGE 125 II 86 E. 4 S. 95; Urteil 2C_384/2016 vom 6. März 2017 E. 1.3.4, nicht publ. in: BGE 143 I 177). Der Beschwerdeführer hat in diesem Fall anhand der Erwägungen des angefochtenen Entscheides darzutun, inwiefern der angefochtene Entscheid willkürlich ist (Art. 117 i.V.m. Art. 106 Abs. 2 BGG; vgl. BGE 135 III 232 E. 1.2 S. 234; Urteile 2C_1014/2015 vom 21. Juli 2016 E. 4; 2C_747/2012 vom 12. März 2013 E. 2.3).
2.2. Das Bundesgericht legt seinem Urteil den Sachverhalt zugrunde, den die Vorinstanz festgestellt hat (Art. 118 Abs. 1 BGG). Es kann die Sachverhaltsfeststellung der Vorinstanz von Amtes wegen berichtigen oder ergänzen, wenn sie unter Verletzung eines verfassungsmässigen Rechts zustande kam (Art. 118 Abs. 2 und 116 BGG).
3.
3.1. Die Beschwerdeführerin rügt, der Nichteintretensentscheid der Vorinstanz beruhe auf einem offensichtlich falsch festgestellten Sachverhalt und sei willkürlich im Sinne von Art. 9 BV. Bei dem zu vergebenden Unterhalts- und Glasreinigungsarbeiten handle es sich um eine Dienstleistung. Der Auftrag sei auf eine feste Vertragsdauer von zwei Jahren, ab dem 1. Juli 2018, zu vergeben gewesen. Die Beschwerdeführerin - wie die beiden anderen Anbieterinnen auch - hätten ihre Dienstleistungen, wie dies praxisüblich sei, für ein Jahr offeriert. Dass die Preise pro Jahr anzugeben seien, ergebe sich aus den Ausschreibungsunterlagen, insbesondere aus dem Dokument "Leistungsverzeichnis", welches die Reinigungsstandards pro Jahr ausführe. Aufgerechnet auf die feste Vertragsdauer von zwei Jahren, betrage der Gesamtwert des Auftrags Fr. 167'078.40.-- und liege somit über dem Schwellenwert von Fr. 150'000.--. Würde man zudem noch die Verlängerungsmöglichkeit des Vertrags berücksichtigen, wäre der Auftragswert noch höher. Die Feststellung der Vorinstanz, der Schwellenwert sei nicht erreicht, sei offensichtlich falsch und verletzte die massgebende Gesetzgebung in krasser Weise. Das Nichteintreten auf die Beschwerde sei deshalb qualifiziert falsch.
3.2. Gemäss § 14 Abs. 1 des Gesetzes vom 22. September 1996 über öffentliche Beschaffungen des Kantons Solothurn (Submissionsgesetz/SO; BGS 721.54) wird ein Auftrag im Einladungsverfahren vergeben, wenn sein Gesamtwert (Schwellenwert) folgenden Betrag erreicht: Fr. 300'000.-- bei Aufträgen des Bauhauptgewerbes (lit. a), Fr. 150'000.-- bei Aufträgen des Baunebengewerbes und bei Dienstleistungen (lit. b) und Fr. 100'000.-- bei Lieferungen (lit. c). In Bezug auf den Rechtsschutz hält § 30 Abs. 3 Submissionsgesetz/SO fest, dass bei Beschaffungen, deren Gesamtwert den Schwellenwert für das Einladungsverfahren nach § 14 Abs. 1 nicht erreicht, keine Beschwerde erhoben werden kann. Gemäss § 13 Abs. 1 der Verordnung vom 17. Dezember 1996 über öffentliche Beschaffungen des Kantons Solothurn (Submissionsverordnung/SO; BGS 721.55) ist bei Verträgen mit einer bestimmten Laufzeit der Gesamtwert (lit. a) und bei Verträgen mit unbestimmter Laufzeit die monatliche Rate multipliziert mit 48 (lit. b) als Auftragswert massgebend, wenn die Auftraggeberin Güter oder Dienstleistungen durch Leasing, Miete oder Mietkauf beschafft. Diese Berechnung ist gemäss der Rechtsprechung des Verwaltungsgerichts des Kantons Solothurn auf andere wiederkehrende Leistungen analog anwendbar (vgl. Urteil [des Verwaltungsgerichts des Kantons Solothurn] vom 16. März 2016 E. 2.2.2, in: Solothurnische Gerichtspraxis [SOG] 2016 Nr. 16).
3.3. Es ist unbestritten, dass der vorliegende Auftrag, bestehend aus den Teilbereichen Unterhaltsreinigung und Reinigung Verglasung, eine Dienstleistung darstellt. Den Ausschreibungsunterlagen ist zu entnehmen, dass die Ausgleichskasse den Auftrag auf eine feste Vertragsdauer von zwei Jahren ab dem 1. Juli 2018 vergibt. Nach Ablauf der festen Vertragsdauer verlängert sich der Vertrag jeweils um ein weiteres Jahr, sofern er nicht vor Ablauf gekündigt wird.
Vorliegend ist aus den Akten nicht ersichtlich, ob die Beschwerdeführerin oder die beiden anderen Anbieterinnen ihre Dienstleistungen für ein Jahr oder für die feste Vertragsdauer von zwei Jahren offeriert haben. Die drei Anbieterinnen haben das Offertblatt ausgefüllt, welches Teil der Ausschreibungsunterlagen bildet. Dieses enthält keine Hinweise dazu, ob die Preise pro Jahr oder für zwei Jahre anzugeben seien. Das von der Beschwerdeführerin erwähnte Dokument "Leistungsverzeichnis" (vgl. E. 3.1 hiervor), welches ebenfalls einen integrierenden Bestandteil der Ausschreibungsunterlagen bildet, führt allerdings die jeweiligen Reinigungsstandards pro Woche und/oder pro Jahr auf. So hat beispielsweise die vollflächige Reinigung der Keramikwände zweimal pro Jahr zu erfolgen, während die Büroböden einmal wöchentlich abzusaugen sind. Die Reinigungsstandards bei Verglasung werden sogar nur pro Jahr angegeben. Aus diesen Vorgaben des Leistungsverzeichnisses ergibt sich, dass die Angebote die Betreffnisse für die Dienstleistungen während eines Jahres auswiesen.
Dem angefochtenen Urteil lässt sich nicht entnehmen, wie die Vorinstanz den massgebenden Auftragswert berechnet hat. Die Argumentation der Beschwerdeführerin, wonach alle Anbieterinnen ihre Dienstleistungen jeweils pro Jahr offeriert hätten, wurde im Rahmen der Vernehmlassung zur vorliegenden Beschwerde von keiner Seite bestritten. Der Schluss der Verwaltungsgerichts, dass die Offerte der Beschwerdeführerin den massgebenden Schwellenwert von Fr. 150'000.-- nicht erreiche, findet in den Akten keine Stütze und erweist sich - vor dem Hintergrund, dass die Ausschreibung sich auf die Dienstleistungen während zwei Jahren bezog - als unhaltbar. Folglich hat die Vorinstanz in willkürlicher Weise ein rechtserhebliches Sachverhaltselement nicht festgestellt. Die Frage, ob der massgebende Schwellenwert erreicht worden sei, ist für den Verfahrensausgang entscheidend, weil davon die Öffnung des Rechtswegs an das Verwaltungsgericht abhängt. Das angefochtene Urteil ist aus diesem Grund insoweit aufzuheben, als damit auf die Beschwerde nicht eingetreten wurde, und die Sache ist zu neuem Entscheid an die Vorinstanz zurückzuweisen.
4.
Nach dem Gesagten ist die subsidiäre Verfassungsbeschwerde gutzuheissen. Ziff. 1 und 3 des angefochtenen Nichteintretensentscheids sind aufzuheben und die Sache zu neuer Entscheidung an die Vorinstanz zurückzuweisen.
5.
Die Ausgleichskasse des Kantons Solothurn gilt als unterliegende Partei, die eigene Vermögensinteressen verfolgt (Art. 66 Abs. 1 und 4 BGG; BGE 130 I 258 E. 6 S. 268; Urteile 2C_553/2015 vom 26. November 2015 E. 3; 2C_1131/2013 vom 31. März 2015 E. 8.1, nicht publ. in: BGE 141 II 113). Ebenfalls als unterliegende Partei (Art. 66 Abs. 1 BGG) gilt die B._ AG, weil der Beschwerde teilweise aufschiebende Wirkung erteilt wurde und mit dem Ausgang des bundesgerichtlichen Verfahrens ein Eingriff in ihre Rechtsstellung weiterhin möglich erscheint (vgl. Urteil 2C_658/2016 vom 25. August 2016 E. 4.2 mit Hinweisen). Der Ausgleichskasse und der B._ AG als unterliegende Parteien sind die Gerichtskosten (Art. 66 Abs. 1, 4 und 5 BGG) und die Parteientschädigung zugunsten der Beschwerdeführerin (Art. 68 Abs. 1 und 4 i.V.m. Art. 66 Abs. 5 BGG) je zur Hälfte aufzuerlegen.
Demnach erkennt das Bundesgericht:
1.
Die subsidiäre Verfassungsbeschwerde wird gutgeheissen. Ziff. 1 und 3 des angefochtenen Urteils des Verwaltungsgerichts des Kantons Solothurn vom 14. März 2018 werden aufgehoben. Die Sache wird zu neuer Entscheidung an das Verwaltungsgericht des Kantons Solothurn zurückgewiesen.
2.
Die Gerichtskosten von Fr. 2'000.-- werden der Ausgleichskasse des Kantons Solothurn und der B._ AG je zur Hälfte, ausmachend je Fr. 1'000.--, auferlegt.
3.
Die Ausgleichskasse des Kantons Solothurn und die B._ AG werden verpflichtet, die A._ AG für das bundesgerichtliche Verfahren mit je Fr. 1'500.-- zu entschädigen.
4.
Dieses Urteil wird den Verfahrensbeteiligten und dem Verwaltungsgericht des Kantons Solothurn schriftlich mitgeteilt.
Lausanne, 25. Juni 2018
Im Namen der II. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Seiler
Die Gerichtsschreiberin: Ivanov