Add basil, 1/4 teaspoon pepper, 1/4 teaspoon salt, and tomatoes; cook over low heat 20 minutes, stirring occasionally. Set aside.
Place a large saucepan coated with cooking spray over medium-high heat until hot.
Add mushrooms, and cook 5 minutes.
Remove from saucepan, and set aside.
Add flour to saucepan. Gradually add milk, stirring with a whisk until blended.
Place flour mixture over medium heat, and cook until thick (about 3 minutes), stirring constantly. Stir in Swiss cheese, wine, 1/2 teaspoon pepper, and 1/4 teaspoon salt. Cook until cheese melts (about 1 minute), stirring constantly.
Remove from heat, and stir in mushrooms.
Combine linguine and mushroom sauce in a large bowl. Spoon linguine mixture into a 13 x 9-inch baking dish coated with cooking spray.
Spread tomato sauce evenly over the linguine mixture, and sprinkle with Parmesan cheese. Cover and bake at 350 for 20 minutes. Uncover and bake an additional 5 minutes.