If you set your date dimension table up with a surrogate key (say an integer identity column), then your foreign key column in your fact table would be of the type integer. Do a lookup in your transformation and loading processes between the raw data inserted in your staging table (prior to loading the new records into the fact table) and the date dimension table and insert in your staging table the surrogate key value for the matching date record found in the date dimension table. Once all of your records in the staging table are properly coded with corresponding dimension key values you can simply insert the records in the staging table into your fact table and you are good to go.
UPDATE s SET s.date_key = d.date_key FROM staging_table s JOIN date_dimension_table d ON s.date_column = d.date_column
...or something like that.